sql >> データベース >  >> RDS >> Mysql

C#MySql CREATE USER

    コマンドを実行する前に、接続を開く必要があります

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

    使い捨てコマンドを使用ステートメントで囲むことを忘れないでください

    編集 コードを見ると(すぐにここに入れてみませんか?)、エラーがどこにあるかは明らかです

    この行

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

    文字列形式に渡されるパラメータは3つあるため、string.formatのプレースホルダーに使用されるインデックスは0、1、2です。
    パスワードに3を使用したため、範囲外の例外が発生します




    1. インプロデュースされた配列をmysqlのプリペアドステートメントにバインドする際の問題

    2. 7645ヌルまたは空のフルテキスト述語

    3. SQLで数値を最も近い整数に切り上げる方法

    4. SQL Server ServerManagementStudioを使用したデータベースのインポート/エクスポート