创建用户
本文关键字:用户 创建 | 更新日期: 2023-09-27 18:01:50
我试图用c#做一个注册声明。很明显我做不到。我不知道到底是什么问题。下面是一个代码片段:
MySqlConnection Connection =
new MySqlConnection("SERVER=localhost;UID=root;");
MySqlCommand Command =
new MySqlCommand("CREATE USER 'testuser'@'localhost'
IDENTIFIED BY 'superpassword';", Connection);
Command.ExecuteNonQuery();
在执行该命令之前,需要打开连接
using(MySqlConnection Connection = new MySqlConnection("SERVER=localhost;UID=root;"))
using(MySqlCommand Command = new MySqlCommand("CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'superpassword';", Connection))
{
Connection.Open();
Command.ExecuteNonQuery();
}
不要忘记将一次性命令包含在Using语句中
EDIT查看您的代码(为什么不立即放在这里?)很明显错误在哪里
这条线this.COMMAND = String.Format("CREATE USER '{0}'@'{1}' IDENTIFIED BY '{3}';", username, host, password);
应为
this.COMMAND = String.Format("CREATE USER '{0}'@'{1}' IDENTIFIED BY '{2}';", username, host, password);
有三个参数传递给字符串格式,因此索引将用于字符串中的占位符。格式为0、1和2。
您使用3作为密码,这会产生超出范围的异常