带有SQL查询的种子模型表
我有一个ASP.NET Core应用程序,带有EF Core和本地数据库服务器 我想使用VisualStudio的SQLServer对象工具,用纯SQL查询为模型种子 基本上,我在SQL工具中编写了一个新的查询对象,并编写了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
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支持)。。。