我正在构建一个修补现有MS SQL数据库的补丁程序。用户在修补程序中经历了多个步骤,但直到最后都没有进行任何更改。
该程序使用Entity Framework来读取和写入数据库,我正在收集单个事务中的所有更改,以便我可以随时回滚。
但是,现在我需要能够在SQL Server(及其文件)上重命名数据库......这是否可以通过实体框架实现,与其他操作包含在同一个事务中?如果有,怎么样?重命名数据库后会断开连接吗?
答案 0 :(得分:2)
EF无法做到这一点。使用SMO,它有Database.Rename方法,它是使用数据库模式的更合适的工具:
Server srv = new Server(conn);
Database database = srv.Databases["AdventureWorks"];
database.Rename("newName");