我可以附加数据库并将所有数据从一个数据库复制到另一个数据库。但最后我无法使用相同的代码分离它。 var connection = new SQLiteConnection(connection) connection.Open(); sqlAttachCommand = "ATTACH database '" + fileLoc + "' AS toMerge"; var cmd= new SQLiteCommand(sqlAttachCommand); cmd.Connection = connection; cmd.ExecuteNonQuery(); ... sqlAttachCommand = "DETACH database '" + fileLoc + "'"; 例外是:SQL 逻辑错误或缺少数据库没有这样的数据库:C:\temp\database.db”。这很奇怪,因为我确实附加了它,并且我复制了该数据库中的所有数据。
1 回答

牛魔王的故事
TA贡献1830条经验 获得超3个赞
该DETACH DATABASE
命令将架构名称作为参数,而不是数据库文件。
所以你的分离命令应该是这样的:
sqlAttachCommand = "DETACH database toMerge";
就像在您的 ATTACH 命令中一样,您将事物命名为toMerge
。
在 SQL Exception 中,丢失的数据库并不是指 SQLite 丢失了该文件的事实,它只是试图告诉您正在使用不存在的架构名称。
- 1 回答
- 0 关注
- 211 浏览
添加回答
举报
0/150
提交
取消