带有SQL查询的种子模型表

带有SQL查询的种子模型表,sql,sql-server,Sql,Sql Server,我有一个ASP.NET Core应用程序,带有EF Core和本地数据库服务器 我想使用VisualStudio的SQLServer对象工具,用纯SQL查询为模型种子 基本上,我在SQL工具中编写了一个新的查询对象,并编写了SQLinsert,但它总是抛出一个错误“无效的列名‘我的值’” 有没有办法做到这一点,或者我必须由LINQ来做 这是数据库中的模型表 [Id] INT IDENTITY (1, 1) NOT NULL, [Code] NVARCHAR(MAX

我有一个ASP.NET Core应用程序,带有EF Core和本地数据库服务器

我想使用VisualStudio的SQLServer对象工具,用纯SQL查询为模型种子

基本上,我在SQL工具中编写了一个新的查询对象,并编写了SQL
insert
,但它总是抛出一个错误“无效的列名‘我的值’”

有没有办法做到这一点,或者我必须由LINQ来做

这是数据库中的模型表

[Id]     INT           IDENTITY (1, 1) NOT NULL,
[Code]   NVARCHAR(MAX) NULL,
[Name]   NVARCHAR(MAX) NULL,
[IsTrue] BIT           DEFAULT ((0)) NOT NULL,

CONSTRAINT [PK_Country] PRIMARY KEY CLUSTERED ([Id] ASC)
我正在尝试运行的SQL脚本:

INSERT INTO Country (Name, Code, IsTrue) 
VALUES ("Afghanistan", "AF", 0),
       ("Åland Islands", "AX", 0),
...
我得到的错误

味精207,16级,状态1,第2行
列名称“Afghanistan”无效。“


对于所有行。我想一次插入大约200行。

T-SQL中的字符串文本用单引号分隔,而不是双引号。请尝试使用:

INSERT INTO Country (Name, Code, IsTrue) 
VALUES ('Afghanistan', 'AF', 0),
       ('Åland Islands', 'AX', 0),

varchar值必须放在mssql服务器的单引号中,请尝试仅使用单引号:例如:“afganistan”不使用“afganishtan”“非常感谢你,先生,它成功了。此外,我还必须为每个值创建insert语句,因为它不允许在一个语句中插入多个值。@rronaldr:SQL Server 2008及更高版本在
values
关键字后支持多个元组-这意味着您使用的是非常旧的SQL Server版本-您肯定应该升级!!(即使是SQL Server 2008/2008 R2也不再受Microsoft支持)。。。