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

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 void main(String[]args) {
      long kilometer = 9223372036854775807L;
      System.out.println("The largest positive value for long range:"+kilometer);
   }
}

上記プログラムを実行すると、次のような結果が出力されます。

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

MySQLのBIGINTのデモ

次に、MySQLにおけるBIGINT型の使用例を見ていきましょう。まずは、BIGINT型のフィールドを持つテーブルを作成するクエリです。

mysql> create table BigIntDemo
   -> (
   -> Kilometer BigInt
   -> );
Query OK, 0 rows affected (0.74 sec)

続いて、作成したテーブルにレコードを挿入します。ここでは、Javaのlong型の最大値である9223372036854775807をそのまま挿入してみます。

mysql> insert into BigIntDemo values(9223372036854775807);
Query OK, 1 row affected (0.19 sec)

レコードが正しく挿入されたかどうかを確認するには、SELECT文を実行します。

mysql> select *from BigIntDemo;

実行結果は以下の通りです。long型の最大値が問題なく格納されていることがわかります。

+---------------------+
| Kilometer           |
+---------------------+
| 9223372036854775807 |
+---------------------+
1 row in set (0.00 sec)

このように、Javaのlong型とMySQLのBIGINTは同じ8バイト幅を持つため、大きな整数値をアプリケーションとデータベース間でやり取りする際にも、値の欠落やオーバーフローを心配することなく扱えます。

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

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

  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