現在、HTTPpost メソッドで自分の Web サイトからスクリプトを実行できます。
string scriptDirectory = "c:\\Users\\user\\Documents";
string sqlConnectionString = "Integrated Security=SSPI;" +
"Persist Security Info=True;Data Source=ARES";
DirectoryInfo di = new DirectoryInfo(scriptDirectory);
FileInfo[] rgFiles = di.GetFiles("*.sql");
foreach (FileInfo fi in rgFiles)
{
FileInfo fileInfo = new FileInfo(fi.FullName);
string script = fileInfo.OpenText().ReadToEnd();
SqlConnection connection = new SqlConnection(sqlConnectionString);
Server server = new Server(new ServerConnection(connection));
server.ConnectionContext.ExecuteNonQuery(script);
connection.Close();
}
Atm スクリプトは新しいデータベースを作成しています (データベースはまだ動的ではありません)。Web サイトのユーザーが入力したパラメーターを渡し、それを SQL スクリプトに渡したいと考えています。基本的に、作成するデータベースの名前を選択してもらいたいです。
SQL コマンドはスクリプトの先頭にあります。
CREATE DATABASE [This is where the name will be passed to]
GO
USE[This is where the name will be passed to]
編集:
私はこのコードを持っています
SqlCommand createDbCommand = new SqlCommand();
createDbCommand.CommandText = "CREATE DATABASE [@DataBase]";
createDbCommand.Parameters.Add("@DataBase", SqlDbType.Text);
createDbCommand.Parameters["@DataBase"].Value = client.HostName;
これをスクリプトの先頭に手動で入力する必要がありますか?