【发布时间】:2019-08-17 12:16:37
【问题描述】:
我正在尝试找到将现有数据库本地复制到我的 Visual Studio C# 项目中的最佳方法(这样我只需更改连接字符串就可以在任何地方工作)。 想法是导入所有结构和过程,然后删除一些数据。
但我不确定这样做的最佳做法和程序是什么。 创建 SQL 项目?
添加实体框架引用?
现在很容易找到建立基础的方法需要后记。 添加 SQL 项目 从生产数据库导入结构 然后部署到本地数据库(现在需要检查如何让 post 脚本插入一大块数据)。
对于我现在简化的数据,如果没有付费的 SSMS 插件(查询插入语句),我找不到干净的方法来做到这一点。 所以用实例源/目标制作了两行代码。
Entities source = new Entities();
Entities1 target = new Entities1();
var chunkA = source.Table1.OrderByDescending(d => d.Date).Take(50000);
target.Table1.AddRange(chunkA);
var chunkB = source.Table2.OrderByDescending(d => d.DateTime).Take(50000);
target.Table2.AddRange(chunkB);
【问题讨论】:
-
使用 SSMS,创建备份然后在本地恢复?如果这是一次需要,我看不出使用专用工具来完成这项工作有什么问题
-
我很确定 Visual Studio 已经集成了所有程序,为什么我告诉“最佳实践”它有 sql express 并且可以导入结构/数据本身,只是有点迷失了如何去做
-
创建数据库项目,导入源数据库架构,添加脚本插入数据。稍后将项目部署到选择的 sql-server 实例。
-
是的@Serg,它刚刚完成了本地数据库结构,现在主要问题是如何只用一大块数据(不是百万行)填充表,看看 ssms 生成脚本或项目部署 postscript 或用 c# 编写代码不知道(我没有后置脚本的技能)我会在其中选择 top(10000) foreach 表。如果您可以帮助发布脚本和 sql cmd 它是如何工作的
-
这是一个特定于数据的任务。可能也使用 localdb 作为便携式存储或 xml。
标签: c# sql visual-studio