首页 新闻 会员 周边 捐助

.NET 动态创建SQL 数据库表

0
[待解决问题]

代码如下:

  

private void btnConnect_Click(object sender, EventArgs e)

        {

           

                if (txtServer.Text == "")

                {

                    MessageBox.Show("请输入服务器名");

                    return;

                }

                if (txtUser.Text == "")

                {

                    MessageBox.Show("请输入登录名");

                    return;

                }

 

                string strConn = "Data Source="+txtServer.Text.Trim()+";Initial Catalog=master;User ID="+txtUser.Text.Trim()+";";            SqlConnection conn = new SqlConnection(strConn);

            try

            {

                conn.Open();

 

                string sql = "select cacc_name,cdbname from t_kdaccount_gl";

                SqlCommand cmd = new SqlCommand();

                cmd.CommandText = sql;

                cmd.Connection = conn;

 

                SqlDataAdapter sda = new SqlDataAdapter(cmd);

                DataSet ds = new DataSet();

                sda.Fill(ds);

 

                drp.DataSource = ds.Tables[0];

                drp.DisplayMember = "cacc_name";

            }

            catch

            {

                MessageBox.Show("参数不正确,请重新输入");

                return;

            }

                    

        }

 

 

    

        private void btnExe_Click(object sender, EventArgs e)

        {

            if (txtSql.Text == "")

            {

                MessageBox.Show("请输入查询语句");

                return;

            }

 

            string strConn = "Data Source="+txtServer.Text+";Initial Catalog="+drp.ValueMember+";User ID="+txtUser.Text+"";

            SqlConnection conn = new SqlConnection(strConn);

            try {

                conn.Open();

                SqlCommand sc = new SqlCommand();

                sc.Connection = conn;

                sc.CommandText = txtSql.Text.ToString();

                SqlDataAdapter sda = new SqlDataAdapter(sc);

                DataSet ds = new DataSet();

                sda.Fill(ds);

 

                MessageBox.Show("执行成功");                return;

            }

            catch {

                MessageBox.Show("出错误了!!!");

                return;

            }

        } 

 

    第一个按钮里面执行的是数据库连接,没有问题

    第二个  帐套 : COMBOBOX里的值对应的是 MASTER表里的 某一项列名,但同时又是一个独立的数据库名  没有问题

    问题是 根据 COMBOBOX里的值  创建一个表的时候,在 TEXT里 必须输入USE 库名 才能 创建表 ,我想 通过 COMBOBOX里的 值 自动选择 库名 在 TEXT里 执行 CREATER TABLE的命令,就能创建一个表 希望各位大神不吝赐教

问题补充:

代码已经说的很清楚了啊

   一共就 三步

   第一是 连接 SQL 数据库

   第二将 数据库里MASTER表里的 字段名 显示到 COMBOBOX里

   第三 通过COMBOBOX里的 字段名 找到 相应的 数据库名 然后在下面的TEXT里执行 SQL语句!!! 执行就 OK了 !!

  关键是 第三步 这我出了问题!!!!

燃烧的烟头的主页 燃烧的烟头 | 菜鸟二级 | 园豆:210
提问于:2012-12-13 16:51
< >
分享
所有回答(2)
0

不懂,不明白,在查询分析器里的创建表的语句是啥?

Launcher | 园豆:45050 (高人七级) | 2012-12-13 17:04
0

建立了数据库,才可以建表,只要不违反这个顺序就完全可以行,前提还要是你的连接字符串中的用户有creat db,create table的权限

chenping2008 | 园豆:9836 (大侠五级) | 2012-12-13 17:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册