相关疑难解决方法(0)

有没有办法将 SQL Server *数据* 转换为实体框架对象以用于播种数据?

我正在使用 Entity Framework Code First,我想生成 C# 代码,用于从数据库中已存在的数据中播种数据。现在,填充 DropCreateDatabaseIfModelChanges.Seed() 似乎是一个完全手动的过程,开发人员在其中创建对象并填充值。如果开发人员是唯一负责播种数据的人,那么这在某种程度上是可以管理的,但我想情况通常并非如此。

在我的特定情况下,有一些非开发人员通过使用一些 MVCScaffolding 生成的输入表单来帮助填充数据库。他们添加的数据确实属于“种子数据”类别,因此我想将他们新添加的行包含到我的 Seed() 实现中。人们可以简单地将其解释为“生成 C# 代码插入脚本”函数。

谢谢!

c# sql-server asp.net-mvc entity-framework ef-code-first

6
推荐指数
1
解决办法
2658
查看次数

SQL Server 2008的sp_generate_inserts

我一直在SQL Server 2005数据库中使用Narayana Vyas Kondreddi的优秀存储过程sp_generate_inserts http://vyaskn.tripod.com/code/generate_inserts.txt.

但是在转移到SQL Server 2008后,我得到了奇怪的结果,其中在UNIQUEIDENTIFIER值之后插入了一个长空格:

INSERT INTO [BannerGroups]([Id], [DescriptionText], [Width], [Height]) 
VALUES('BFCD0173-9432-47D1-84DF-8AB3FB40BF76                                                                                                                                                                                                                           ', 'Example', 145, NULL)
Run Code Online (Sandbox Code Playgroud)

有人知道怎么修这个东西吗?

sql-server stored-procedures sql-server-2005 sql-server-2008

5
推荐指数
1
解决办法
1万
查看次数

在 SQL Server 中为特定表生成 UPDATE 语句

我想知道是否有一种工具可以UPDATE根据已插入表中的数据生成语句。我知道有MERGE声明,但我想知道我是否可以通过其他方式做到这一点。我正在使用 SQL Server 2014

假设我有一个 TableA:

Id int,
Name nvarchar(50),
Description nvarchar(100),
Active bit
Run Code Online (Sandbox Code Playgroud)

然后我的 TableA 有这个记录和更多:

Id   Name       Description   Active
1    blablabla  sdjfhksj      1
Run Code Online (Sandbox Code Playgroud)

我想为此表上的每一行创建更新语句

Update TableA
   set Name = 'blablabla',
       Description = 'sdjfhksj',
       Active = 1
 where Id = 1
Run Code Online (Sandbox Code Playgroud)

sql-server

3
推荐指数
2
解决办法
1万
查看次数

SQL Server 生成带有标识插入的脚本

生成数据库脚本时,我正在编写要迁移到不同环境的数据的脚本。脚本生成中是否有一个设置,我可以启用它来自动设置 IDENTITY_INSERT 开/关,这样我就不必在生成的脚本中手动检查每个表并进行设置?我正在使用 SSMS,我想通过 SSMS 来做到这一点。

这是我得到的:

INSERT my_table (my_table_id, my_table_name) VALUES (1, 'val1');
INSERT my_table (my_table_id, my_table_name) VALUES (2, 'val2');
Run Code Online (Sandbox Code Playgroud)

这是我想要的:

SET IDENTITY_INSERT my_table ON
INSERT my_table (my_table_id, my_table_name) VALUES (1, 'val1');
INSERT my_table (my_table_id, my_table_name) VALUES (2, 'val2');
SET IDENTITY_INSERT my_table OFF
Run Code Online (Sandbox Code Playgroud)

identity-insert generate-scripts sql-server-2008

2
推荐指数
1
解决办法
8517
查看次数