我正在使用Access数据库保存数据,有时我想在代码中自动压缩它。
执行此操作时,此方法CompactDatabase删除其中一个表中的数据。 该表的名称为Language 我不知道为什么。
这是数据库契约的代码
public class Globals{
public static string localDbPath = @"C:\Pulser\LocalPulserDB.mdb";
public static string localDbPathTemp = @"C:\Pulser\LocalPulserDBTemp.mdb";
}
DBEngine de = new DBEngine();
System.IO.File.Move(Globals.localDbPath, Globals.localDbPathTemp);
string dbNameTemp = Globals.localDbPathTemp;
string dbName = Globals.localDbPath;
de.CompactDatabase(dbNameTemp, dbName, null, null, null);
File.Delete(Globals.localDbPath);
语言表如下所示:
当我尝试将其手动压缩时,其工作正常 另外,当我尝试在另一台计算机上运行此代码时,它的工作正常(不删除数据)。
如果我想念任何重要信息告诉我,请告诉我