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

MySQLコネクタ/C++でどの実行関数を使用する必要がありますか?

    3つの関数にはそれぞれ特定の用途があり、リターンタイプから推測できます。

    実行

    この関数は最も一般的な関数です。ブール値を返します。この値は、クエリが複数の結果を返す場合はtrue、クエリが何も返さないか更新カウントを返す場合はfalseを返します。

    これは、できるだけ一般的なものにするために1つだけを使用する場合に使用する関数です。

    trueが返された場合は、ResultSet * getResultSet()を使用する必要があります。 結果を取得するには。
    falseが返される場合は、uint64_t getUpdateCount()を使用することをお勧めします。 更新された行の数を取得します。

    executeQuery

    この関数は、ResultSetを直接返します。 これはSELECTに役立ちます ステートメントであり、実際に返される結果セットがあることを前提としています。

    execute()を呼び出すのと同じです 続いてgetResultSet()

    行などの結果を返すSQLコードを使用していることがわかっている場合は、この関数を使用することをお勧めします。

    executeUpdate

    この関数は、UPDATEに役立つ整数値を返します。 ステートメントであり、返される更新カウントがあることを前提としています。

    execute()を呼び出すのと同じです 続いてgetUpdateCount() とはいえ、何らかの理由で、戻り値のタイプが異なります(intとuint64_t)。

    これは、データを変更するSQLステートメントを実行するときに使用する関数であり、一部のデータが変更されたかどうかを知る必要があります。

    だから、

    統合されたものは実際にはexecute 、これを使用して任意のSQLを実行し、結果を適切に処理できます。他の2つは、実行するクエリの種類がわかっている場合に便利なラッパーです。

    あなたの場合、SQL言語のラッパーを書いているので、各関数は実行するステートメントの種類を知っているので、便利な関数を使用すると、より短いコードを書くことができます。

    例:

    insert(), update(), delete() ---> executeUpdate()
    select()                     ---> executeQuery()
    



    1. sp_reset_connectionは何をしますか?

    2. 特定の行名が存在しない場合はPOSTGRESQLINSERT?

    3. SCUMMダッシュボードを使用したMySQLの効果的な監視:パート1

    4. このシナリオでは、複数のテーブルがSQLで結合されます