我尝试备份我的数据库。 所以当我备份它工作,但当我导入SQL数据库时,它显示错误
表示sql export`
IF OBJECT_ID('AIc', 'U') IS NOT NULL
DROP TABLE AIc
CREATE TABLE AIc
(
IDAIC int NOT NULL IDENTITY(10,2),
name nvarchar (50)
);
INSERT INTO AIc (IDAIC,name) Values
(10,'asaf'),
(12,'shazar');
错误:
无法在表'AIc'中为identity列插入显式值 IDENTITY_INSERT设置为OFF。
答案 0 :(得分:1)
由于IDAIC
列是IDENTITY
列,因此您有两种选择:
(1)您只是没有提供值,让SQL Server自己处理这些值的INSERT
('是首选的,默认的插入数据的方式):
INSERT INTO AIc(name) Values('asaf'), ('shazar');
或(2)如果您必须自己指定这些值,则需要先启用SET IDENTITY_INSERT ON
(并在{{之后再将其关闭) 1}}):
INSERT
答案 1 :(得分:0)
您可以像这样在表格上启用标识插入,以便您可以指定自己的标识值。
IF OBJECT_ID('AIc', 'U') IS NOT NULL
DROP TABLE AIc
CREATE TABLE AIc
(
IDAIC int NOT NULL IDENTITY(10,2),
name nvarchar (50)
);
SET IDENTITY_INSERT AIc ON
INSERT INTO AIc (IDAIC,name) Values
(10,'asaf'),
(12,'shazar');
SET IDENTITY_INSERT AIc OFF
答案 2 :(得分:0)
您正在为IDAIC
插入一个标识列的值。
您可以像这样在表格上启用标识插入,以便您可以指定自己的标识值。
SET IDENTITY_INSERT AIc ON
INSERT INTO AIc
/*Note the column list is REQUIRED here, not optional*/
(IDAIC,name)
Values
(10,'asaf'),
(12,'shazar');
SET IDENTITY_INSERT AIc OFF
答案 3 :(得分:0)
请尝试以下代码: -
IF OBJECT_ID('AIc', 'U') IS NOT NULL
DROP TABLE AIc
CREATE TABLE AIc
(
IDAIC int NOT NULL IDENTITY(10,2),
name nvarchar (50)
);
SET IDENTITY_INSERT AIc ON;
INSERT INTO AIc (IDAIC,name) Values
(10,'asaf'),
(12,'shazar');