You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 8.1的SQL Server Express中创建表后插入数据报错求助

排查并解决SQL插入错误的方案

咱们来一步步拆解你遇到的问题:

错误原因分析

你碰到的两个Msg 207错误,根源主要有两个:

  • 字符串值未加单引号:SQL Server里,字符串类型的字段值必须用单引号(')包裹。你写的Omereji没加引号,数据库会误以为这是一个列名,所以抛出“Invalid column name 'Omereji'”的错误。
  • 自增列不应手动插入值:你的CSCFileNumberId是IDENTITY自增主键,默认情况下数据库会自动为这个列生成递增的数值,不需要你在INSERT语句里指定它。这个问题虽然没直接抛出对应报错,但可能干扰了SQL解析逻辑,间接导致了第二个“Invalid column name 'SurName'”的异常。

修正后的SQL语句

把这两个问题修复后,正确的代码应该是这样的:

CREATE TABLE Promotions ( 
    CSCFileNumberId INTEGER IDENTITY PRIMARY KEY, 
    SurName VARCHAR(30), 
    DateofFirstAppointment INTEGER, 
    InterviewScore INTEGER 
); 

INSERT INTO Promotions (SurName, DateofFirstAppointment, InterviewScore) 
VALUES ('Omereji', 098761, 45);

额外注意事项

  • 如果确实需要手动给IDENTITY列插入指定值(比如数据迁移场景),需要先执行以下语句开启IDENTITY_INSERT权限,插入完成后再关闭:
SET IDENTITY_INSERT Promotions ON;
-- 这里执行包含CSCFileNumberId的INSERT语句
SET IDENTITY_INSERT Promotions OFF;
  • 另外,DateofFirstAppointment字段你定义为INTEGER类型,看起来像是日期相关的数据,建议改用DATE或DATETIME类型,这样更符合数据语义,也方便后续做日期筛选、计算等操作。

内容的提问来源于stack exchange,提问作者9codes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:58:07