1

我有一个需要添加一列的 SQL 数据库表。添加该列后,我需要为添加的列一次性指定所有行的值;我知道要添加我可以使用以下内容的列:

// Adds a column to the table
"ALTER TABLE myTable ADD lastCheck INT;"

从这里我只剩下使用 php 循环遍历 15+k 行表了。有没有更好/更快的方法来做到这一点而不必依赖 PHP 作为工作马?

几点注意事项:
1:初始设置列行的值后,值可以为空,因此指定默认值是不可能的。

4

3 回答 3

6

试试这个

ALTER TABLE myTable ADD lastCheck INT DEFAULT 10

或者您可以在之后运行更新

UPDATE MyTable SET lastCheck = 10

SQL小提琴

于 2012-11-11T05:10:15.807 回答
2

您可以使用:

$query="Update Tablename set Columnname='value'";
于 2012-11-11T05:12:10.187 回答
2

这应该适合你:

ALTER TABLE myTable ADD COLUMN lastCheck INT DEFAULT 123

这将添加新列并将所有记录的列值一次设置为 123。这不会禁止该列具有 NULL 值。实际上,您甚至可以在执行此操作后将默认设置为 NULL:

ALTER TABLE myTable ALTER COLUMN lastCheck DROP DEFAULT 
于 2012-11-11T05:15:28.557 回答