sql >> Base de Datos >  >> RDS >> Mysql

C# MySql CREAR USUARIO

Antes de ejecutar el comando, debe abrir la conexión

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();
}

No olvide incluir los comandos desechables en una declaración de uso

EDITAR Mirando su código (¿por qué no lo pone aquí inmediatamente?) está claro dónde está el error

esta línea

this.COMMAND = String.Format("CREATE USER '{0}'@'{1}' IDENTIFIED BY '{3}';", username, host, password); 

debería ser

this.COMMAND = String.Format("CREATE USER '{0}'@'{1}' IDENTIFIED BY '{2}';", username, host, password); 

Hay tres parámetros pasados ​​al formato de cadena, por lo que los índices que se utilizarán para los marcadores de posición en el formato de cadena son 0, 1 y 2.
Usó 3 para la contraseña y esto da la excepción de fuera de rango