我对 MS SQL 不是很有经验,如果我的问题很愚蠢,请多包涵 - 但是我在互联网上找不到真正的信息。
所以,我只是尝试创建一个 SQL 登录和该登录的 SQL 用户,步骤如下:
SqlCommand CreateDatabaseUser = new SqlCommand("CREATE LOGIN @NewUserLogin " +
"WITH PASSWORD = '@NewUserPassword' " +
"CREATE USER @NewUserLogin FOR LOGIN @NewUserLogin", AddUserConnection);
CreateDatabaseUser.Parameters.AddWithValue("@NewUserLogin", NewUserLoginTextbox.Text);
CreateDatabaseUser.Parameters.AddWithValue("@NewUserPassword", PasswordTextbox.Text);
AddUserConnection.Open();
CreateDatabaseUser.ExecuteNonQuery();
我收到了一个错误,提示“Incorrect syntax near '@NewUserLogin'”
。但是如果我采用不正确和不安全的方式:
"CREATE LOGIN " + NewUserLoginTextbox.Text +
" WITH PASSWORD = '" + PasswordTextbox.Text + "'" +
" CREATE USER " + NewUserLoginTextbox.Text + " FOR LOGIN " + NewUserLoginTextbox.Text
那么,它确实可以工作!
因此,我想弄清楚我在那里做了什么。提前感谢!