mysql - 有没有办法在一个命令中使多个列不为空?

标签 mysql

非常简单。我一直在阅读 ALTER 文档并在该站点和其他站点上进行搜索,寻找更省时的方法来更改我的表属性。我犯了一个错误,在创建表时将所有列设为 NULL 而不是 NOT NULL 并希望全部更改。它们中没有数据,所以我一直在做的是:

ALTER TABLE DB.TABLE MODIFY COLUMN TINYINT(1) NOT NULL;

字段类型有TINYINT(1), VARCHAR(256), VARCHAR(512), VARCHAR (1024)VARCHAR(10000) 所以像 DB.* 这样的东西会起作用,因为我需要用这个命令指定列的类型。

有没有办法做到这一点?只需更改每一列的“NULL”属性,完全忽略其余信息?

谢谢!

最佳答案

你有两个选择

  1. 因为你说里面没有数据;您可以通过删除现有表并重新创建来重新创建该表。
  2. 分别为所有列触发 ALTER 命令。

在这种情况下,我会选择第一个选项以节省时间。

关于mysql - 有没有办法在一个命令中使多个列不为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23661993/

相关文章:

php - 使用 jquery 过滤组合框

php - 随机 MySQL 查询?或者随机化一个结果?

mysql - 更改服务器系统变量mysql

php - 如果变量等于“全部”,则选择列中的所有字段,否则仅选择等于变量的字段

mysql - SQL 查询显示列中的字符串值

PHP、MySQL; GROUP BY 不适用于日期时间

java - jooq 3.11.9 与 MySQL 版本 8.0.11

mysql - 合并两个使用不同时间范围的最小/最大/平均值查询

php - 计算计数,然后计算总计数的总和 MySql

php - 蜜 jar 反垃圾邮件技术。如何为每个站点加载的隐藏字段随机生成一个名称?