当前位置: 代码迷 >> 综合 >> c#使用脚本语言创建数据库(SQL SERVER 2008R2)
  详细解决方案

c#使用脚本语言创建数据库(SQL SERVER 2008R2)

热度:56   发布时间:2023-12-16 04:20:59.0

环境:SQL SERVER 2008R2,windows7,vs2010

(1)首先将数据库导出为脚本语言:
打开SQL SERVER 2008R2 ,右击数据库>>任务>>生成脚本>>一直下一步(设置保存路径),得到类型为.sql的数据库脚本语言。
可以看到文件格式为:
在这里插入图片描述
(2)将.sql改为.txt文件。

(3)编写程序

创建数据库:

public static void CreateDatebase(string path, SqlCommand cmd){//读取脚本文件StreamReader sr = new StreamReader(path, Encoding.Default);String line;//执行sql语句string newLIne = "\r\n";string sql = string.Empty;while ((line = sr.ReadLine()) != null){if (line == "GO"){cmd.CommandText = sql;cmd.ExecuteNonQuery();sql = string.Empty;}else{sql += line;sql += newLIne;}}}

链接数据库,并判断数据库是否存在:

        static void Main(string[] args){try{//填写你的数据库信息string source = @"server=YOURSERVER;database=master;uid=YOURID;pwd=YOURPSW;";SqlConnection cn = new SqlConnection(source);cn.Open();Console.WriteLine("数据库连接成功");SqlCommand cmd = cn.CreateCommand();//检测你想要创建的数据库是否已经存在cmd.CommandText = "select * From master.dbo.sysdatabases where name='abc'";if (cmd.ExecuteScalar() == null){//填写你的脚本文件保存路径string path = "C:/Users/Administrator/Desktop/mysql.txt";CreateDatebase(path,cmd);Console.WriteLine("数据库创建完成");}else {Console.WriteLine("该数据库已存在");}cn.Close();}catch (Exception ex) {Console.WriteLine(ex.Message);}Console.ReadKey();}

第一句话:

   string source = @"server=YOURSERVER;database=master;uid=YOURID;pwd=YOURPSW;";

是在为连接数据库做准备,其中server为服务器名称,uid为登录名,pwd为登录密码。
在这里插入图片描述
执行程序,生成数据库成功!

  相关解决方案