无法在名称记录中并行插入last_name记录

时间:2017-02-10 13:38:27

标签: sql-server

我是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) 

2 个答案:

答案 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列。

希望这有帮助!