mysql - 将默认值添加到架构构建器中的枚举类型字段

标签 mysql laravel laravel-4 enums database-schema

我正在使用以下方法在模式构建器中创建 ENUM 类型的数据库列:

$table->enum('status', array('new', 'active', 'disabled'));

我想将它的默认值设置为active
我试着这样做:

$table->enum('status', array('new', 'active', 'disabled'))->default('active');

但是你可以猜到它没有设置它的默认值。如果这很重要,我会使用 MySQL 数据库。

最佳答案

来自 the MySQL manual :

If an ENUM column is declared to permit NULL, the NULL value is a legal value for the column, and the default value is NULL. If an ENUM column is declared NOT NULL, its default value is the first element of the list of permitted values.

我假设这意味着您应该将 'active' 设置为第一个值,删除 default() 调用,并可能设置 NULL手动允许。

关于mysql - 将默认值添加到架构构建器中的枚举类型字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28547038/

相关文章:

MySQL 选择附件

python - 在 Python 中调用 MySQL 存储过程 - 参数错误 # 不正确

php - laravel中的AJAX文件上传

command-line - 创建和使用 Laravel 4 命令

laravel - 如何在 laravel 身份验证中处理自定义列名、用户名和密码

php - MySQL 数据库级别选择

php - 从一个表单插入到两个表中

php - 从集合中获取最高值(value)

php - 如何将集合传递给可邮寄的 laravel

php - Laravel 排序关系