请需要帮助...我想将未加密的sqlite数据库附加到另一个加密的数据库,我正在使用DevExpress XpoDefault.Session来做到这一点..但我总是收到错误消息"文件是否是加密器数据库"。
string conStr = string.Format( "XpoProvider=SQLite;Data Source={0};Password=1234", MyEncryptedDbFile );
MyDatalayer = XpoDefault.GetDataLayer(conStr, AutoCreateOption.DatabaseAndSchema);
string s = Path.Combine(Application.StartupPath, MyUnEncryptedDbFile);
XpoDefault.Session = new UnitOfWork(MyDataLayer);
string st = string.Format("attach database '{0}' as AttachedAlias", s);
XpoDefault.Session.ExecuteNonQuery(st); /// Error File is encrypted or not database.....*
致以诚挚的问候,并原谅我的英语
答案 0 :(得分:1)
我找到了一种方法来做到这一点,但这是最好的吗???
首先打开加密的One;
XpoDefault.Session = new UnitOfWork(MyDataLayer);
秒将密码更改为Empty并附加未加密的数据库:
SQLiteConnection connection = XpoDefault.Session.Connection as SQLiteConnection;
connection.ChangePassword(string.Empty);
string st = string.Format("attach database '{0}' as AttachedAlias", s);
XpoDefault.Session.ExecuteNonQuery(st);
最后恢复加密数据库的密码
connnection.ChangePassword("1234");
它起作用......但它是最好的方式吗?...