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

C#、MySQL-コマンド実行中に致命的なエラーが発生しました-他の解決策を確認しました、私が見逃しているもの

    この行は間違っています

    using (conn = new MySqlConnection(cs));
    

    セミコロンを削除し、MySqlConnection変数を必要とするすべてのものを{}内に含めます ブロック

    using (MySqlConnection conn = new MySqlConnection(cs))
    {
        // No need to test if the connection is not open....
        conn.Open();
        .........
    
        // Not needed (at least from your code above
        // MySqlDataAdapter MyAdapter2 = new MySqlDataAdapter();
        // MyAdapter2.SelectCommand = myCommand2;
    
        ... calcs follow here
    
        // Attention here, if the query returns null (no input match) this line will throw
        oldpoints = (int)myCommand2.ExecuteScalar();
    
        .... other calcs here
    
    
        MySqlCommand cmdDataBase = new MySqlCommand(query, conn);
        cmdDataBase.Parameters.Add("@input", SqlDbType.Int).Value = Convert.ToInt32(textBox2.Text);
        cmdDataBase.Parameters.AddWithValue("@Points", new_points);
        cmdDataBase.Parameters.AddWithValue("@Rewards", new_rewards);
        cmdDataBase.Parameters.AddWithValue("@Transaction", textBox3.Text);
        cmdDataBase.Parameters.AddWithValue("@TransationDate", transaction_date);
    
        // Use ExecuteNonQuery for INSERT/UPDATE/DELETE and other DDL calla
        cmdDataBase.ExecuteNonQuery();
    
        // Not needed
        // MySqlDataReader myReader2;
        // myReader2 = cmdDataBase.ExecuteReader();
    
        // Not needed, the using block will close and dispose the connection
        if(conn.State == ConnectionState.Open)
            conn.Close();
    
    }
    

    最後のクエリにも別のエラーがあります。 @TransactionDateパラメーターとWHERE句の間にスペースがありません。長いSQLコマンドテキストが必要な場合は、逐語的な文字列行の文字の続き@が非常に便利です。

    string query = @"UPDATE members Set [email protected], [email protected], 
                            [email protected], [email protected]
                            WHERE id = @input;";
    



    1. 別の列を追加すると、MysqlDISTINCTが機能しません

    2. mysql_result()は、パラメーター1がリソースであり、ブール値が指定されていることを想定しています。

    3. データベースに多くの言語を話せるようにするにはどうすればよいですか?

    4. MySQLをアウトファイルフォーマットに