【问题标题】:try to import query, show error尝试导入查询,显示错误
【发布时间】:2014-09-16 11:56:00
【问题描述】:

我尝试备份我的数据库。 所以当我备份它工作但当我将 sql 导入数据库时​​它显示错误

那个sql导出`

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_INSERT 设置为 OFF。

【问题讨论】:

  • 当您搜索错误时,它没有解释它?不明白怎么办?
  • 我怎样才能插入它

标签: sql sql-server


【解决方案1】:

由于IDAIC 列是IDENTITY 列,您有两种选择:

(1)您只是不提供一个值,让 SQL Server 自己处理这些值的INSERT(这是首选的默认插入方式数据):

INSERT INTO AIc(name) Values('asaf'), ('shazar');        

(2),如果您必须自己指定这些值,则需要先启用SET IDENTITY_INSERT ON(并在INSERT之后再次将其关闭) :

SET IDENTITY_INSERT AIC ON

INSERT INTO AIc (IDAIC, name) 
VALUES (10, 'asaf'), (12, 'shazar');

SET IDENTITY_INSERT AIC OFF

【讨论】:

    【解决方案2】:

    您可以像这样在表上打开标识插入,以便您可以指定自己的标识值。

        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
    

    【讨论】:

    • 这缺少不提供身份的选项,这是执行此操作的更理想方式
    【解决方案3】:

    您正在为作为标识列的 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 
    

    【讨论】:

      【解决方案4】:

      试试下面的代码:-

      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');
      

      【讨论】:

        猜你喜欢
        • 2021-10-26
        • 1970-01-01
        • 2020-07-09
        • 2015-04-08
        • 1970-01-01
        • 1970-01-01
        • 2019-01-23
        • 2023-03-09
        • 1970-01-01
        相关资源
        最近更新 更多