/[AnywhereTS-MSSQL]/trunk/TSAdminTool/Database.cs
ViewVC logotype

Diff of /trunk/TSAdminTool/Database.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

--- trunk/TSAdminTool/Database.cs	2012/07/12 12:25:58	40
+++ trunk/TSAdminTool/Database.cs	2012/07/12 12:41:04	41
@@ -27,7 +27,7 @@
         private SqlCommand sqlCmd = new SqlCommand();
 
         const string SQL_BROWSER_SERVICE_NAME = "SQLBrowser";
-        const Version CURRENT_DB_VERSION = new Version(1, 0, 0, 3);
+        static Version CURRENT_DB_VERSION = new Version(1, 0, 0, 3);
         public static string InstanceName
         {
             get
@@ -226,45 +226,91 @@
                 string strResult;
 
                 //Verify that the AnywhereTS database exists
-                sqlCmd = new SqlCommand("select count(*) from master..sysdatabases where name='AnywhereTS'", sqlCon);
-                strResult = sqlCmd.ExecuteScalar().ToString();
 
-                if (strResult == "0")
-                {
-                    sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString.Replace("AnywhereTS", "master"));
-                    sqlCon.Open();
-                    RunScript(Resource1.CreateDatabase.ToString());
-                    sqlCon.Close();
-                    sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString.Replace("AnywhereTS", "master"));
-                    sqlCon.Open();
-                    RunScript(Resource1.CreateTables.ToString());
-                    sqlCon.Close();
-                }
-                try
+                using (log4net.NDC.Push(string.Format("SQL STATMENT={0}", "select count(*) from master..sysdatabases where name='AnywhereTS'")))
                 {
-                    sqlCon.Close();
-                    sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString);
-                    sqlCon.Open();
-                    sqlCmd = new SqlCommand("SELECT value from AnywhereTS..AppInfo where property='version'", sqlCon);
-                    strResult = (string)sqlCmd.ExecuteScalar();
-                    sqlCon.Close();
+                    Logging.ATSAdminLog.Debug("Getting Coount of AnywhereTS databases");
+                      sqlCmd = new SqlCommand("select count(*) from master..sysdatabases where name='AnywhereTS'", sqlCon);
+                        strResult = sqlCmd.ExecuteScalar().ToString();
                 }
-                catch
+               Logging.ATSAdminLog.DebugFormat("AnywhereTS databases Count={0}", strResult);
+
+                if (strResult == "0")
                 {
-                    // the database exists, but one or more tables are missing
-                    try
+
+
+                    using (log4net.NDC.Push(string.Format("SQL Statment={0}", Resource1.CreateDatabase.ToString())))
                     {
+                        Logging.ATSAdminLog.Debug("Creating Database AnywhereTS in CheckVersion()");
+                        sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString.Replace("AnywhereTS", "master"));
+                        sqlCon.Open();
+                        RunScript(Resource1.CreateDatabase.ToString());
+                        sqlCon.Close();
+                    }
+                    Logging.ATSAdminLog.Debug("Created Database AnywhereTS in CheckVersion()");
+
+                    using (log4net.NDC.Push(string.Format("SQL Statment={0}", Resource1.CreateTables.ToString())))
+                    {
+                        Logging.ATSAdminLog.Debug("Creating Tables in AnywhereTS Database in CheckVersion()");
                         sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString.Replace("AnywhereTS", "master"));
                         sqlCon.Open();
                         RunScript(Resource1.CreateTables.ToString());
                         sqlCon.Close();
+                    }
+                    Logging.ATSAdminLog.Debug("Created Tables in AnywhereTS Database in CheckVersion()");
+                }
+                try
+                {
+                    using (log4net.NDC.Push(string.Format("SQL Statment={0}", "SELECT value from AnywhereTS..AppInfo where property='version'")))
+                    {
+                        Logging.ATSAdminLog.Debug("Gettting AnywhereTS Database Version");
+                        sqlCon.Close();
                         sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString);
                         sqlCon.Open();
                         sqlCmd = new SqlCommand("SELECT value from AnywhereTS..AppInfo where property='version'", sqlCon);
                         strResult = (string)sqlCmd.ExecuteScalar();
+                        sqlCon.Close();
+                    }
+                    Logging.ATSAdminLog.DebugFormat("AnywhereTS database version={0}", strResult);
+                }
+                catch(SqlException ex)
+                {
+                    // the database exists, but one or more tables are missing
+                    using (log4net.NDC.Push(string.Format("SqlException: ID={0} MESSAGE={1}{2}Diagnostics:{2}{3}", ex.Number.ToString(), ex.Message, System.Environment.NewLine, ex.ToString())))
+                    {
+                        Logging.ATSAdminLog.Error("Failed to get database version");
                     }
-                    catch
+                    try
                     {
+
+                        using (log4net.NDC.Push(string.Format("SQL Statment={0}", Resource1.CreateTables.ToString())))
+                        {
+                            Logging.ATSAdminLog.Debug("Creating Tables in AnywhereTS Database in CheckVersion()");
+                            sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString.Replace("AnywhereTS", "master"));
+                            sqlCon.Open();
+                            RunScript(Resource1.CreateTables.ToString());
+                            sqlCon.Close();
+                        }
+                        Logging.ATSAdminLog.Debug("Created Tables in AnywhereTS Database in CheckVersion()");
+
+                        using (log4net.NDC.Push(string.Format("SQL Statment={0}", "SELECT value from AnywhereTS..AppInfo where property='version'")))
+                        {
+                            Logging.ATSAdminLog.Debug("Gettting AnywhereTS Database Version");
+                            sqlCon.Close();
+                            sqlCon = new SqlConnection(Properties.Settings.Default.atsConnectionString);
+                            sqlCon.Open();
+                            sqlCmd = new SqlCommand("SELECT value from AnywhereTS..AppInfo where property='version'", sqlCon);
+                            strResult = (string)sqlCmd.ExecuteScalar();
+                            sqlCon.Close();
+                        }
+                        Logging.ATSAdminLog.DebugFormat("AnywhereTS database version={0}", strResult);
+                    }
+                    catch(SqlException ex1)
+                    {
+                        using (log4net.NDC.Push(string.Format("SqlException: ID={0} MESSAGE={1}{2}Diagnostics:{2}{3}", ex1.Number.ToString(), ex1.Message, System.Environment.NewLine, ex1.ToString())))
+                        {
+                            Logging.ATSAdminLog.Error("Failed to get database version");
+                        }
                         return (int)VersionCheck.Failed;
                     }
                 }
@@ -285,11 +331,19 @@
             catch (SqlException sql_ex)
             {
                 MessageBox.Show(sql_ex.Number.ToString() + " " + sql_ex.Message.ToString());
+                using (log4net.NDC.Push(string.Format("SqlException: ID={0} MESSAGE={1}{2}Diagnostics:{2}{3}", sql_ex.Number.ToString(), sql_ex.Message, System.Environment.NewLine, sql_ex.ToString())))
+                {
+                    Logging.ATSAdminLog.Error("Failed to check database version");
+                }
                 return (int)VersionCheck.Failed;
             }
             catch (Exception system_ex)
             {
                 MessageBox.Show(system_ex.Message.ToString());
+                using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", system_ex.Message, System.Environment.NewLine, system_ex.ToString())))
+                {
+                    Logging.ATSAdminLog.Error("Failed to check database version");
+                }
                 return (int)VersionCheck.Failed;
             }
         }

 

  ViewVC Help
Powered by ViewVC 1.1.22