public static int ShrinkDataBase(this MainForm main, CoreConfig config) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { List <string> dbs = config.DataBases; if (dbs != null) { int i = 0; foreach (string db in dbs) { try { if (sql.Exist(db)) { sql.ShrinkDataBase(db); i++; } } catch (Exception) { break; } } return(i); } } return(0); }
public static int CreateDataBase(this MainForm main, CoreConfig config, string path) { string[] files = Directory.GetFiles(path, "*.bak"); string targetpath = config.DatabasePath; if (!Directory.Exists(targetpath)) { Directory.CreateDirectory(targetpath); } if (files != null) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { int i = 0; foreach (string file in files) { try { sql.RestoreOrCreate(file, targetpath); i++; } catch (Exception e) { main.Error("创建数据库失败:" + file + "\n" + e.Message); break; } } return(i); } } return(0); }
public static int SplitDb(this ServerForm main, CoreConfig config) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { List <string> dbs = config.DataBases; if (dbs != null) { int i = 0; foreach (string db in dbs) { try { if (sql.Exist(db)) { sql.SplitDataBase(db); i++; } } catch (Exception e) { main.Error(R.TipServerDbSplitFail + "\n" + e); break; } } return(i); } } return(0); }
public static int AttachDataBase(this ServerForm main, CoreConfig config) { List <string> dbs = config.DataBases; if (dbs != null) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { int i = 0; foreach (string db in dbs) { string file = PathHelper.Combine(config.DatabasePath, db + ".mdf"); try { if (!sql.Exist(db)) { sql.AttachDataBase(db, file); i++; } } catch (Exception e) { main.Error(R.TipServerDbAttachFail + "\n" + file + "\n" + e.Message); break; } } return(i); } } return(0); }
public static bool connectDataBase(this MainForm main, string server, string user, string pwd, string dbname) { string connect = MSSqlHelper.MakeConnectString(server, user, pwd, dbname); bool rs = db.Open(connect); if (rs) { IniHelper helper = new IniHelper(Environment.CurrentDirectory + "/DBIni.ini"); helper.WriteValue("mssql", "server", server.Trim()); helper.WriteValue("mssql", "database", dbname.Trim()); helper.WriteValue("mssql", "user", user.Trim()); helper.WriteValue("mssql", "password", pwd.Trim()); } return(rs); }
public static int AttachDataBase(this MainForm main, CoreConfig config) { List <string> dbs = config.DataBases; if (dbs != null) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { int i = 0; foreach (string db in dbs) { string file = PathHelper.Combine(config.DatabasePath, db + ".mdf"); try { if (sql.Exist(db)) { #if DEBUG main.Warnning("数据库已经存在:" + db); #endif } else { sql.AttachDataBase(db, file); i++; } } catch (Exception e) { #if DEBUG main.Error("分离失败\n" + e); #else main.Error("附加失败\n" + file + "\n" + e.Message); #endif break; } } return(i); } } return(0); }
private bool StartAll() { if (!SerivceHelper.ExistService(Config.SqlServer)) { this.Error(R.ErrorSqlServerNotInstall); return(false); } if (!SerivceHelper.IsRunningService(Config.SqlServer)) { if (!SerivceHelper.StartService(Config.SqlServer)) { this.Error(string.Format(R.ErrorSqlServerNotStart, Config.SqlServer)); return(false); } } using (MSSqlHelper db = new MSSqlHelper(Config.ConnectionString)){ if (!db.Open()) { this.Error(R.ErrorSqlServerNotConnect); return(false); } } if (ProcessPanels != null) { new Thread(() => { foreach (ProcessPanel p in ProcessPanels) { if (!p.IsRunning()) { p.StartProcess(); } } // Invoke(new UpdateUI(updateStatu), new object[]{false}); }).Start(); } if (HttpServer != null) { HttpServer.Start(); } return(true); }
public static int SplitDb(this MainForm main, CoreConfig config) { MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { List <string> dbs = config.DataBases; if (dbs != null) { int i = 0; foreach (string db in dbs) { try { if (sql.Exist(db)) { sql.SplitDataBase(db); i++; } else { #if DEBUG main.Warnning("数据库不存在:" + db); #endif } } catch (Exception e) { #if DEBUG main.Error("分离失败\n" + e); #else main.Error("分离失败\n" + e.Message); #endif break; } } return(i); } } return(0); }
public static int CleanDataBaseLog(this MainForm main, CoreConfig config) { List <string> dbs = config.DataBases; if (dbs != null) { DirectoryInfo dir = new DirectoryInfo(config.DatabasePath); if (!dir.Exists) { return(0); } MSSqlHelper sql = new MSSqlHelper(config.ConnectionString); if (sql.Open()) { int i = 0; foreach (string db in dbs) { if (sql.Exist(db)) { #if DEBUG main.Warnning("数据库没有分离:" + db); #endif return(-1); } else { FileInfo[] files = dir.GetFiles(db + "*.ldf"); if (files != null && files.Length > 0) { files[0].Delete(); i++; } } } return(i); } } return(0); }