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

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でUNSIGNEDのSMALLINTを使用した場合、0 ~ 65535の範囲となるため、Javaのshort型では表現できず、int型での扱いが必要になる点に注意しましょう。

Javaにおけるshort型のサンプルコード

以下は、Javaでshort型を使用したデモコードです。

public class SmallIntAsShortDemo {
    public static void main(String[] args) {
        short value = 32767;
        System.out.println(value);
        value = -32768;
        System.out.println(value);
        // value = 32768;  // 範囲外のためコンパイルエラー
        // System.out.println(value);
    }
}

このコードでは、short型が扱える最大値の「32767」と最小値の「-32768」を変数に代入して表示しています。コメントアウトしている部分のように、範囲を超える「32768」を代入しようとするとコンパイルエラーが発生します。

実行結果

32767
-32768

Eclipse IDEで実行すると、上記の出力が得られます。

まとめ

Javaのshort型とMySQLのSMALLINTは、どちらも2バイトで-32768 ~ 32767の範囲を持つため、そのまま対応させて扱うことができます。JDBCなどでデータベースと連携する際には、SMALLINT型のカラムの値をResultSetのgetShort()メソッドでshort型として取得するのが一般的です。

  1. MySQLにおけるJavaのlong型に相当するデータ型は何?BIGINTとの対応を解説

    MySQLにおけるJavaのlong型に相当する型は「BIGINT」MySQLの変数(カラム)のコンテキストにおいて、Javaのlong型に相当するデータ型はBIGINTです。Javaのlong型は8バイトのサイズを持ちますが、MySQLのBIGINTもまったく同じく8バイトを使用します。そのため、Javaのlong型で扱える値は、範囲を超えることなくそのままBIGINTカラムに格納することが可能です。Javaのlong型のデモ以下は、Javaのlong型が扱える最大の正の値を出力するサンプルコードです。public class JavaLongDemo { public static

  2. MySQLのUNHEX()に相当するPHP関数とは?hex2bin()の使い方を解説

    PHPにおけるMySQLのUNHEX()相当の関数MySQLのUNHEX()関数と同じ処理をPHPで行いたい場合は、hex2bin()関数を使用します。この関数は、16進数形式の文字列をバイナリデータ(元の文字列)に変換するもので、まさにMySQLのUNHEX()に相当する機能を持っています。hex2bin()の基本構文構文は以下の通りです。$anyVariableName = hex2bin(yourHexadecimalValue);引数には16進数の文字列を指定し、戻り値として変換後のバイナリデータが返されます。PHPでの実装例実際にhex2bin()を使用したサンプルコードを見てみまし