MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLにおける16進値のデフォルト型とは?

MySQLにおける16進値のデフォルト型

MySQLでは、16進値(ヘキサデシマル値)は使用されるコンテキストによって異なる型として扱われます。具体的には、数値コンテキストでは整数として振る舞い、文字列コンテキストではバイナリ文字列として扱われます。

この挙動は、以下の例で確認できます。

mysql> SELECT X'5455544F5249414C53504F494E54';
+---------------------------------+
| X'5455544F5249414C53504F494E54' |
+---------------------------------+
| TUTORIALSPOINT                  |
+---------------------------------+
1 row in set (0.07 sec)

この例では、X'...' 形式で記述された16進値が、対応するASCII文字列「TUTORIALSPOINT」として表示されています。これは、SELECT文による出力が文字列コンテキストとして扱われるためです。

16進値のデフォルト型は「文字列」

それでは、MySQLにおける16進値のデフォルトの型は何でしょうか。答えは「文字列(string)」です。つまり、明示的に変換しない限り、16進リテラルはバイナリ文字列として扱われます。

なお、16進値は X'...' 形式のほかに、0x というプレフィックスを使った記法(例:0x54)でも表現できます。また、CAST() 関数や CONV() 関数を使用することで、16進値を整数など別の型に明示的に変換することも可能です。

  1. MySQL JDBCドライバーの接続文字列とは?書き方と使い方を解説

    MySQL JDBCドライバーの接続文字列とはJavaからMySQLデータベースへ接続する際に必要となるのが「JDBC接続文字列」です。まず、MySQLのJDBCドライバーを読み込むためのコードは以下のようになります。Class.forName(com.mysql.jdbc.Driver);ここで指定している Driver はインターフェースであり、このクラスをロードすることでMySQL用のJDBCドライバーが利用可能になります。なお、新しいMySQL Connector/J(バージョン8.0以降)では、ドライバークラス名が com.mysql.cj.jdbc.Driver に変更されている点

  2. MySQLのSMALLINTに相当するJavaの型は?short型との対応関係を解説

    MySQLのSMALLINTに相当するJavaのデータ型は、short型です。Javaのshort型は2バイト(16ビット)の符号付き整数で、-32768から32767までの範囲の値を扱うことができます。MySQLのSMALLINTも同様に2バイトで、同じ範囲の値を格納可能です。MySQLのSMALLINTとJavaのshort型の比較項目MySQL(SMALLINT)Java(short)サイズ2バイト(16ビット)2バイト(16ビット)値の範囲-32768 ~ 32767-32768 ~ 32767備考UNSIGNEDを指定すると0 ~ 65535になる符号付きのみなお、MySQLでUNS