Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 변수에서 Java long에 해당하는 데이터 타입은 무엇일까요?

MySQL 변수 환경에서 Java의 long 타입에 해당하는 것은 바로 BIGINT입니다.

Java의 long은 8바이트를 차지하며, MySQL의 BIGINT 역시 동일하게 8바이트를 사용합니다. 따라서 두 타입은 저장 범위와 크기 측면에서 완벽하게 호환됩니다.

Java long과 MySQL BIGINT의 비교

  • Java long: 부호 있는 64비트 정수, 8바이트, 범위는 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
  • MySQL BIGINT: 부호 있는 64비트 정수, 8바이트, Java long과 동일한 범위를 가짐

Java long 데모

다음은 Java에서 long 타입의 최대값을 출력하는 예제 코드입니다.

public class JavaLongDemo {
   public static void main(String[] args) {
      long kilometer = 9223372036854775807L;
      System.out.println("long 타입의 최대 양수값: " + kilometer);
   }
}

MySQL BIGINT 데모

이번에는 MySQL에서 BIGINT 타입을 사용하는 예제를 살펴보겠습니다. 아래는 BIGINT 타입의 필드를 가진 테이블을 생성하는 쿼리입니다.

mysql> CREATE TABLE BigIntDemo
    -> (
    -> Kilometer BIGINT
    -> );
Query OK, 0 rows affected (0.74 sec)

테이블 생성이 완료되면 레코드를 삽입해 보겠습니다. Java long의 최대값과 동일한 값을 넣어 정상적으로 저장되는지 확인합니다.

mysql> INSERT INTO BigIntDemo VALUES(9223372036854775807);
Query OK, 1 row affected (0.19 sec)

이제 SELECT 쿼리를 실행하여 레코드가 제대로 삽입되었는지 확인할 수 있습니다.

mysql> SELECT * FROM BigIntDemo;

실행 결과는 다음과 같습니다.

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

정리

Java의 long과 MySQL의 BIGINT는 모두 8바이트(64비트) 부호 있는 정수 타입으로, 동일한 값 범위를 지원합니다. 따라서 Java 애플리케이션에서 다루는 큰 정수 값을 MySQL 데이터베이스에 저장할 때는 BIGINT 타입을 사용하는 것이 가장 적합합니다.