Sql 使用LINQtoExcel和实体框架重新设计数据库,然后重新加载方法
所以我有一些表格,里面有很多数据。假设它们是表A、B和C。我想为每个表添加自动增量ID字段,通过在表之间交换一些字段来规范它们,并添加一个额外的表D。有三个目标:1)重新设计数据库,并重新加载现有数据。2) 启用从电子表格加载数据以添加/编辑/删除四个表。3) 允许web前端添加/编辑/删除四个表 我目前的做法是:Sql 使用LINQtoExcel和实体框架重新设计数据库,然后重新加载方法,sql,entity-framework,ssis,refactoring-databases,linq-to-excel,Sql,Entity Framework,Ssis,Refactoring Databases,Linq To Excel,所以我有一些表格,里面有很多数据。假设它们是表A、B和C。我想为每个表添加自动增量ID字段,通过在表之间交换一些字段来规范它们,并添加一个额外的表D。有三个目标:1)重新设计数据库,并重新加载现有数据。2) 启用从电子表格加载数据以添加/编辑/删除四个表。3) 允许web前端添加/编辑/删除四个表 我目前的做法是: 我想我会将3个现有表格中所有数据的平面文件导出到csv(电子表格)中 然后重构数据库设计结构 然后使用linq to excel将csv电子表格记录读回dto对象 然后使用实体框架
- 我想我会将3个现有表格中所有数据的平面文件导出到csv(电子表格)中
- 然后重构数据库设计结构
- 然后使用linq to excel将csv电子表格记录读回dto对象
- 然后使用实体框架将这些dto对象转换为实体,以使用表之间的适当关系更新数据库
- 该电子表格将重新用于将来的批量数据添加/编辑/删除
sp_rename
重命名现有表,创建新表,然后移动数据
如果您已经必须开发一个批量导入过程,那么通过导出来实现重用可能是有意义的,但我不会仅为这个场景创建整个过程
在某些情况下,这种方法可能不是最好的,但我看不出你的问题中有任何东西让我认为这是一个问题
当然,首先要确保您有一个良好的备份。数据的大小足够大,可以实现自动化,而不会太大,导致导出/导入出现问题。如果您添加了导入/导出过程,则只需再断开一个移动部件即可。现在,如果导出文件中的数据由于某种原因(带引号的字符串未正确处理或其他原因)出错,那么您将无缘无故地遇到额外的麻烦。