diff --git a/laravel/database/schema/grammars/grammar.php b/laravel/database/schema/grammars/grammar.php index da93aa64..62a55719 100644 --- a/laravel/database/schema/grammars/grammar.php +++ b/laravel/database/schema/grammars/grammar.php @@ -96,4 +96,19 @@ protected function type(Fluent $column) return $this->{'type_'.$column->type}($column); } + /** + * Format a value so that it can be used in SQL DEFAULT clauses. + * @param mixed $value + * @return string + */ + protected function default_value($value) + { + if (is_bool($value)) + { + return intval($value); + } + + return strval($value); + } + } \ No newline at end of file diff --git a/laravel/database/schema/grammars/mysql.php b/laravel/database/schema/grammars/mysql.php index fc9107d0..85fe4b31 100644 --- a/laravel/database/schema/grammars/mysql.php +++ b/laravel/database/schema/grammars/mysql.php @@ -128,7 +128,7 @@ protected function defaults(Table $table, Fluent $column) { if ( ! is_null($column->default)) { - return " DEFAULT '".$column->default."'"; + return " DEFAULT '".$this->default_value($column->default)."'"; } } diff --git a/laravel/database/schema/grammars/postgres.php b/laravel/database/schema/grammars/postgres.php index 930c5160..d694b2b3 100644 --- a/laravel/database/schema/grammars/postgres.php +++ b/laravel/database/schema/grammars/postgres.php @@ -101,7 +101,7 @@ protected function defaults(Table $table, Fluent $column) { if ( ! is_null($column->default)) { - return " DEFAULT '".$column->default."'"; + return " DEFAULT '".$this->default_value($column->default)."'"; } } diff --git a/laravel/database/schema/grammars/sqlite.php b/laravel/database/schema/grammars/sqlite.php index 09102f52..a1f2399a 100644 --- a/laravel/database/schema/grammars/sqlite.php +++ b/laravel/database/schema/grammars/sqlite.php @@ -127,7 +127,7 @@ protected function defaults(Table $table, Fluent $column) { if ( ! is_null($column->default)) { - return ' DEFAULT '.$this->wrap($column->default); + return ' DEFAULT '.$this->wrap($this->default_value($column->default)); } } diff --git a/laravel/database/schema/grammars/sqlserver.php b/laravel/database/schema/grammars/sqlserver.php index 5f756c2e..4c3fa99c 100644 --- a/laravel/database/schema/grammars/sqlserver.php +++ b/laravel/database/schema/grammars/sqlserver.php @@ -108,7 +108,7 @@ protected function defaults(Table $table, Fluent $column) { if ( ! is_null($column->default)) { - return " DEFAULT '".$column->default."'"; + return " DEFAULT '".$this->default_value($column->default)."'"; } }