将列添加到表并将列的所有行值设置为指定值

时间:2012-11-11 05:08:13

标签: php mysql alter

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

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

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

一些注意事项:
1:在初始设置列行的值之后,值可以为null,因此指定默认值是不可能的。

3 个答案:

答案 0 :(得分:6)

试试这个

ALTER TABLE myTable ADD lastCheck INT DEFAULT 10

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

UPDATE MyTable SET lastCheck = 10

SQL Fiddle

答案 1 :(得分:2)

您可以使用:

$query="Update Tablename set Columnname='value'";

答案 2 :(得分:2)

这应该适合你:

ALTER TABLE myTable ADD COLUMN lastCheck INT DEFAULT 123

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

ALTER TABLE myTable ALTER COLUMN lastCheck DROP DEFAULT