我正在开发一个我无法远程访问其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();
感谢。
答案 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);
}
}