public void TestCompactMdb() { string fileName = Path.Combine(_tempDirectory, _tempFilePrefix + ".mdb"); OleDba oleDba = null; try { CreateMdb(fileName); oleDba = new OleDba(); oleDba.ConnectMDB(fileName); PopulateOleDba(oleDba); oleDba.Disconnect(); JetSqlUtil.CompactMDB(fileName); oleDba.ConnectMDB(); oleDba.ExecuteSqlCommand(_sqlDropTable); oleDba.Disconnect(); } finally { if (oleDba != null && oleDba.Connected) { oleDba.Disconnect(); oleDba.Dispose(); } File.Delete(fileName); Assert.IsFalse(File.Exists(fileName), "Failed to delete " + fileName); } }
void menuRepairDatabase_Click(object sender, System.EventArgs e) { StringBuilder FileFilter = new StringBuilder(); FileDialog dlg = new OpenFileDialog(); FileFilter.Append(FILTER_JETSQL); dlg.Filter = FileFilter.ToString(); try { if (dlg.ShowDialog() == DialogResult.OK) { if (dlg.FileName == CurrentFile) { DisconnectDataSource(); JetSqlUtil.RepairMDB(dlg.FileName); OpenMDB(CurrentFile); } else { JetSqlUtil.RepairMDB(dlg.FileName); } } } catch (ApplicationException) { StringBuilder ErrorMessage = new StringBuilder(); ErrorMessage.AppendFormat ("There seems to be a problem repairing {0}.\n", dlg.FileName); ErrorMessage.AppendLine ("Perhaps the file is opened by another process."); MessageBox.Show (ErrorMessage.ToString(), "PlaneDisaster.NET"); } dlg.Dispose(); }
void menuNew_Click(object sender, System.EventArgs e) { StringBuilder FileFilter = new StringBuilder(); FileDialog dlg = new SaveFileDialog(); dlg.Title = "New Database"; FileFilter.Append("Microsoft Access (*.mdb)|*.mdb"); FileFilter.Append("|Microsoft Access 95 (*.mdb)|*.mdb"); FileFilter.Append("|Microsoft Access 2000 (*.mdb)|*.mdb"); FileFilter.AppendFormat("|{0}", FILTER_SQLITE); dlg.Filter = FileFilter.ToString(); if (dlg.ShowDialog() == DialogResult.OK) { switch (dlg.FilterIndex) { case 1: JetSqlUtil.CreateMDB(dlg.FileName); OpenMDB(dlg.FileName); break; case 2: JetSqlUtil.CreateMDB(dlg.FileName, AccessDbVersion.Access95); OpenMDB(dlg.FileName); break; case 3: JetSqlUtil.CreateMDB(dlg.FileName, AccessDbVersion.Access2000); OpenMDB(dlg.FileName); break; case 4: System.Data.SQLite.SQLiteConnection.CreateFile (dlg.FileName); OpenSQLite(dlg.FileName); break; } AddRecentFile(dlg.FileName); _oPlaneDisasterSettings.RecentFiles.GenerateOpenRecentMenu (openRecentToolStripMenuItem, menuOpenRecent_Click); InitContextMenues(); } dlg.Dispose(); }
internal void NewDatabaseFile(string FileName) { string Extension = Path.GetExtension(FileName); //TODO: Make use of _JetSqlExtensions and _SqliteExtensions switch (Extension) { case ".mdb": JetSqlUtil.CreateMDB(FileName); this.OpenMDB(FileName); break; case ".db": case ".db3": case ".sqlite": System.Data.SQLite.SQLiteConnection.CreateFile(FileName); this.OpenSQLite(FileName); break; } this.queryToolStripMenuItem.Enabled = true; Text = string.Format("{0} - ({1}) - PlaneDisaster.NET", Path.GetFileName(FileName), FileName); }
private static void CreateMdb(string fileName) { JetSqlUtil.CreateMDB(fileName); Assert.IsTrue(File.Exists(fileName), "Failed to create " + fileName); }
private static void CompactAndRepairMdb(string fileName) { JetSqlUtil.CompactMDB(fileName); JetSqlUtil.RepairMDB(fileName); }
public static void Main(string[] args) { GetOpt oGetOpt = new GetOpt(args); string MdbFile = ""; try { oGetOpt.SetOpts(new string[] { "c", "d=", "s=" }); oGetOpt.Parse(); //DEBUG: Console.WriteLine("Successfully parsed arguments."); } catch (ArgumentException) { Console.Error.WriteLine("ERROR: arguments not supplied"); //TODO: Write usage info function oGetOpt.Args.ToString(); Console.WriteLine(); System.Environment.Exit(666); } if (!oGetOpt.IsDefined("d")) { Console.Error.WriteLine("Must specify the database."); System.Environment.Exit(666); } else { MdbFile = oGetOpt.GetOptionArg("d"); } Console.WriteLine("Database: {0}", MdbFile); try { if (oGetOpt.HasArgument("s")) { Console.WriteLine("SQL Script: {0}", oGetOpt.GetOptionArg("s")); } } catch (ArgumentNullException) { } if (oGetOpt.IsDefined("c")) { if (File.Exists(MdbFile)) { Console.Error.WriteLine("JetSQL file \"{0}\" already exists!", MdbFile); } else { JetSqlUtil.CreateMDB(MdbFile); } } //If the Access file doesn't exist at this point we can't go on if (!File.Exists(MdbFile)) { Console.Error.WriteLine("JetSQL file \"{0}\" does not exist!", MdbFile); } if (oGetOpt.IsDefined("s")) { OdbcDba dbconn = new OdbcDba(); dbconn.ConnectMDB(MdbFile); dbconn.ExecuteSqlFile(oGetOpt.GetOptionArg("s")); dbconn.Disconnect(); } }
protected override void CreateDb(string fileName) { JetSqlUtil.CreateMDB(fileName); Assert.IsTrue(File.Exists(fileName), "Failed to create " + fileName); }