一.如有以下表结构
CREATE TABLE [SAMPLE]
(
ID INT NOT NULL IDENTITY(1,1),
CITY VARCHAR(20) CONSTRAINT DF_CITY DEFAULT 'CQ',
[NAME] VARCHAR(30),
)
要插入一行数据需要使用以下语句
SET IDENTITY_INSERT [SAMPLE] OFF
INSERT INTO [SAMPLE] VALUES(DEFAULT,'chen') 这里标识列值不对指定,如果要使用默认值则在Values里使用DEFAULT关键字)
如果只插入带标识列的某几些,则必须将DENTITY_INSERT 设置为 ON后,然后才能对各个列插入数据
insert into [sample] (id, city, name) values(9, ch, 'ww')
二.使用insert复制表中数据
使用insert复制sample表中的数据到abc表,则两表各列字段必须匹配,且不则复制约束,语法如下
insert abc (id, city, name) select [id], city, [name] from [sample]
此语句虽然可以复制源表sample里的标识列值,麻烦之处在于必指定每个字段,
不知还有没有其它更好的方法?