我有一个带有一列的表,我们称它为table_column
当前null
用于表的所有行。我想将"test"
所有行的值插入该列。有人可以给我这个 SQL 吗?
我已经尝试过 INSERT INTO table (table_column) VALUES ("test");
,但这只会填充最后一行。如何一次完成所有行?
我有一个带有一列的表,我们称它为table_column
当前null
用于表的所有行。我想将"test"
所有行的值插入该列。有人可以给我这个 SQL 吗?
我已经尝试过 INSERT INTO table (table_column) VALUES ("test");
,但这只会填充最后一行。如何一次完成所有行?
您正在寻找UPDATE而不是插入。
UPDATE mytable
SET table_column = 'test';
UPDATE 将更改现有行的值(并且可以包含 WHERE 以使其仅影响特定行),而 INSERT 正在添加一个新行(这使它看起来只更改了最后一行,但实际上是添加一个新行)具有该值的行)。
这是因为在关系数据库术语中,您想要做的不是“插入”,而是“更新” - 您正在将现有行的字段从一个值(在您的情况下为 NULL)更新为“测试”
UPDATE your_table SET table_column = "test"
WHERE table_column = NULL
如果要更新 100% 的行,则不需要第二行。
你实际上在做的是添加行。要更新现有行的内容,请使用 UPDATE 语句:
UPDATE table SET table_column = 'test';
要更新现有行的内容,请使用以下UPDATE
语句:
UPDATE table_name SET table_column = 'test';
UPDATE `table` SET table_column='test';
您需要的 SQL 是:
Update table set table_column = "test";
您发布的 SQL 创建了一个新行,而不是更新现有行。
要创建一个新的空列并为每一行(在 Toad for Oracle 中)填充相同的值(此处为 100 ):
ALTER TABLE my_table ADD new_column INT;
UPDATE my_table SET new_column = 100;