我是SQL的新手,我正在使用Microsoft SQL Server 2012,我正在尝试创建一个表,其中首先记录了id名称和姓氏,我创建了一个包含两列int的表和名称然后我插入记录在他们所有完美然后添加一列last_name之后我试图在其中插入数据我面临的问题是我不能插入last_name的记录与id的记录并行名。
create table test (id int , name varchar(20));
insert into test(id,name)
values(1,'Abid'),(2,'Muhammad'),(3,'Raza'),(4,'Khan');
alter table test
add last_name varchar(20)
答案 0 :(得分:0)
我不确定你想做什么。如果要将last_name列填充到已创建的行,则需要使用UPDATE子句,而不是插入:
UPDATE test
SET last_name = 'Abid's last name'
from test where id = 1
并重复所有现有行。你也可以这样做:
create table test (id int , name varchar(20));
insert into test(id,name)
values(1,'Abid'),(2,'Muhammad'),(3,'Raza'),(4,'Khan');
alter table test
add last_name varchar(20)
TRUNCATE TABLE test
insert into test(id,name,last_name)
values(1,'Abid','I'),(2,'Muhammad','Love'),(3,'Raza','SQL'),(4,'Khan','Server');
快乐的编码!
答案 1 :(得分:0)
要修改行中的列,必须更新该行,在您的情况下:
update test set last_name = 'last name' where id=1
记住WHERE子句,如果你不放在哪里,你去更新所有行的所有last_name列。
希望这有帮助!