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

MySQLバイナリとchar文字セットバイナリ

    違いはありません。

    ただし、文字列を保存する場合は注意が必要です。

    バイト配列またはストリームやファイルなどの他のバイナリデータのみを格納する場合は、バイナリ型を使用してください。

    MySQLマニュアル からの引用 :

    したがって、技術的には違いはありません。

    ただし、文字列を格納するときは、文字セットを使用して文字列からバイト値に変換する必要があります。これは、MySQLサーバーの前に自分で行うか、MySQLに任せるかを決定します。 MySQLは、文字列を BINARYにキャストすることで実行されます BIN文字セットを使用します。

    エンコーディングを別の形式で保存する場合は、1文字あたり4バイトを使用する必要があるというビジネス要件があるとします(MySQLはデフォルトではこれを行いません)。次に、 CHARACTER SET BINARY テキスト列に移動し、文字セットエンコーディングを自分で実行します。

    BINARY> およびVARBINARY タイプ パディングなどの重要な情報について詳しく説明しているMySQLマニュアルから。

    概要: 一方は他方の同義語であるため、技術的な違いはありません。私の意見では、通常は CHARACTER SET BINARYを使用して文字列を保持するデータ型にバイナリ文字列を格納することは論理的に理にかなっています。 バイト配列/ストリームなどをBINARYに格納します 文字セットを介してデータを変換することによって表現できないフィールド。




    1. SQLcl(Oracle)を使用しているときにクエリ結果を.txtファイルにエクスポートする方法

    2. MySQLルートパスワードをリセットする方法

    3. MySQLのキーと値のペアのテーブルからのデータを使用して行を取得する

    4. 収集方法:OracleデータベースでのEXTENDプロシージャ