Browse Source

Update SqlserverSchema.php

Changes to 'default' SQL functions and also NULL setting.
AJ Quick 9 years ago
parent
commit
5a75112e42
1 changed files with 6 additions and 10 deletions
  1. 6 10
      src/Database/Schema/SqlserverSchema.php

+ 6 - 10
src/Database/Schema/SqlserverSchema.php

@@ -400,23 +400,19 @@ class SqlserverSchema extends BaseSchema
 
         if (isset($data['null']) && $data['null'] === false) {
             $out .= ' NOT NULL';
-        }
-
-        if (isset($data['null']) && $data['null'] === true) {
-            $out .= ' DEFAULT NULL';
-            unset($data['default']);
+        } elseif (isset($data['null']) && $data['null'] === true) {
+            $out .= ' NULL';
         }
 
         if (isset($data['default']) &&
             in_array($data['type'], ['timestamp', 'datetime']) &&
-            strtolower($data['default']) === 'current_timestamp'
-        ) {
+            strtolower($data['default']) === 'current_timestamp') {
             $out .= ' DEFAULT CURRENT_TIMESTAMP';
-            unset($data['default']);
-        }
-        if (isset($data['default'])) {
+        } elseif (isset($data['default'])) {
             $default = is_bool($data['default']) ? (int)$data['default'] : $this->_driver->schemaValue($data['default']);
             $out .= ' DEFAULT ' . $default;
+        } elseif (isset($data['null']) && $data['null'] === true) {
+            $out .= ' DEFAULT NULL';
         }
 
         return $out;