在我自己的SQL Server数据库中创建存储过程

时间:2014-05-10 18:28:31

标签: c# sql sql-server stored-procedures

我正在开发一个我无法远程访问其SQL Server的网站。当我尝试在自己的数据库中创建一个新程序时,我遇到了这个错误:

  

CREATE / ALTER PROCEDURE必须是查询批处理中的第一个语句。

这是因为T-SQL脚本包含“GO”语句....

使用Server Management Objects(SMO),问题仍然存在。如何在不使用Go语句且不使用SMO的情况下在数据库中创建存储过程?

这是我的代码:

    SqlConnection Con = new SqlConnection(ConnectionString);
    Con.Open();
    SqlCommand cmd;
    string sql = "CREATE Procedure [dbo]......";
    cmd = new SqlCommand(sql, Con);
    cmd.ExecuteNonQuery();
    Con.Close();

感谢。

1 个答案:

答案 0 :(得分:0)

经过多次搜索,我终于找到了答案。 您可以非常轻松地更改打开的SqlConnection的当前数据库:

connection.ChangeDatabase("YourDB");

一个例子:

private static void ConctDatabase(string connectionString)
{
    using (SqlConnection conn = new SqlConnection(connectionString))
    {
        conn.Open();
        MessageBox.Show("Database: {0}", conn.Database);
        conn.ChangeDatabase("Northwind");
        MessageBox.Show("Database: {0}", conn.Database);
    }
}