用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - c#代码库

SMO工具

2016-10-26 作者: sidecore举报

[c#]代码库

using Microsoft.SqlServer.Management.Smo;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace SEMApp
{
    class Program
    {
        /// <summary>
        /// Main函数
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            //connection string
            string __ConnectString = "SERVER=.;DATABASE=TestA;UID=sa;PWD=xxx";
            SMO smo = new SMO(__ConnectString);
            smo.DatabaseName = "TestA";
            smo.Connect();
 
            //1>备份数据库
            //BackupDatabase(smo);
 
            //2>获取数据库所有表
            //ForeachTable(smo);
 
            //3>循环数据库
            ForeachDatabase(smo);
 
            Console.ReadLine();
        }
 
 
        /// <summary>
        /// 备份数据库>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>测试通过
        /// </summary>
        /// <param name="smo"></param>
        static void BackupDatabase(SMO smo)
        {
 
            smo.backupPath = @"D:\backup\";
            smo.BackupDatabase();
            Console.WriteLine("备份成功!");
        }
 
        /// <summary>
        /// 循环数据所有表
        /// </summary>
        /// <param name="smo"></param>
        static void ForeachTable(SMO smo)
        {
            Console.WriteLine(string.Format("循环数据库下所有用户表:"));
            List<Table> list = smo.Tables.Cast<Table>().Where((e) => e.IsSystemObject == false).ToList();
            foreach (Table table in list)
            {
                //循环列
                for (int i = 0; i < table.Columns.Count; i++)
                {
                    Column column = table.Columns[i];
                    //标示列:column.Identity;
                    //column.IdentityIncrement;//自增量
                    //column.IdentitySeed;//种子
                    //column.InPrimaryKey;//主键
                    //column.Nullable;//可空
 
                }
                Console.WriteLine(table.Name);
            }
 
        }
 
        /// <summary>
        /// SMO
        /// </summary>
        /// <param name="smo"></param>
        static void ForeachDatabase(SMO smo)
        {
            foreach (Database database in smo.Databases)
            {
                Console.WriteLine(database.Name);
            }
        }
 
    }
}


网友评论    (发表评论)

共1 条评论 1/1页

发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...