Ejemplo n.º 1
0
        /// <summary>
        /// 数据库备份sql文件方式
        /// </summary>
        /// <param name="Tables">要备份的表数组</param>
        /// <returns>返回生成的脚本</returns>
        private string DbBackup2005_SQL(string[] Tables)
        {
            StringBuilder backSql = new StringBuilder();

            SqlDmoHelper dmo    = new SqlDmoHelper("", "", "", "");
            string       dbName = dmo.CmsDbName;

            for (int i = 0; i < Tables.Length; i++)
            {
                if (this.chkIsCreateTable.Checked)
                {
                    string createTable = dmo.CreateTableSql(dbName, Tables[i]);
                    if (string.IsNullOrEmpty(createTable))
                    {
                        backSql.Append(" delete " + Tables[i] + "\r\n");
                    }
                    else
                    {
                        backSql.Append(" IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[" + Tables[i] + "]') AND type in (N'U')) DROP TABLE [dbo].[" + Tables[i] + "]\r\n");
                    }
                    backSql.Append(createTable);
                }
                backSql.Append(dmo.CreateInsertSql(Tables[i]));
                backSql.Append("\r\n");
            }
            return(backSql.ToString());
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 获得数据库信息
        /// </summary>
        /// <returns></returns>
        public List <string> GetDataBaseInfo()
        {
            DataTable     dt     = new DataTable();
            List <string> dbInfo = new List <string>();
            SqlDataReader sqlReader;
            //数据库版本
            string strSql = "SELECT @@VERSION";

            sqlReader = SQLHelper.ExecuteReader(SQLHelper.ConnectionStringLocalTransaction, CommandType.Text, strSql, null);
            dt.Load(sqlReader);
            dbInfo.Add(dt.Rows[0][0].ToString().Substring(0, dt.Rows[0][0].ToString().IndexOf('-')));


            //获得数据库的大小
            dt        = new DataTable();
            strSql    = "exec sp_spaceused";
            sqlReader = SQLHelper.ExecuteReader(SQLHelper.ConnectionStringLocalTransaction, CommandType.Text, strSql, null);
            dt.Load(sqlReader);
            dbInfo.Add(dt.Rows[0][1].ToString());

            //获得当前数据库的日志大小

            SqlDmoHelper dmo = new SqlDmoHelper("", "", "", "");


            dbInfo.Add(dmo.GetDatabaseInfo(dmo.CmsDbName).LogSize.ToString());

            //string tests = dmo.CreateTableSql("HQBCMSDB","K_SinglePage");
            //tests = dmo.CreateTableSql("HQBCMSDB", "K_RecyclingManage");

            return(dbInfo);
        }