createtableUnsignedDemoWithPositiveValue-&를 생성하는 쿼리입니다."/> createtableUnsignedDemoWithPositiveValue-&를 생성하는 쿼리입니다.">

>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 '서명되지 않음'은 무엇을 의미하며 언제 사용합니까?

MySQL에서 '서명되지 않음'은 무엇을 의미하며 언제 사용합니까?

王林
王林앞으로
2023-09-17 15:29:021620검색

MySQL 中的“unsigned”是什么意思以及何时使用它?

MySQL의 "서명되지 않음"은 데이터 유형입니다. 어떤 열에 부호 없는 숫자를 쓸 때마다 음수를 삽입할 수 없다는 의미입니다. 매우 큰 숫자의 경우 부호 없는 유형을 사용할 수 있다고 가정합니다.

unsigned int의 최대 범위는 4294967295입니다.

Note: If you insert negative value you will get a MySQL error.

다음은 부호 없는 유형의 예시 데모입니다. 먼저 "부호 없는" 열이 있는 테이블을 만들어 보겠습니다. 아래는 테이블을 생성하는 쿼리입니다. -

mysql> create table UnsignedDemoWithPositiveValue
   -> (
   -> Distance int unsigned
   -> );
Query OK, 0 rows affected (0.86 sec)

부호 없는 상한 값인 4294967295를 삽입하려고 하면 값이 범위를 벗어났기 때문에 오류가 발생합니다.

범위를 벗어난 값을 삽입하세요.

mysql> insert into UnsignedDemoWithPositiveValue values(4294967296);
ERROR 1264 (22003): Out of range value for column 'Distance' at row 1

위 예시에서는 4294967296을 삽입했는데, 이는 범위를 벗어나서 오류가 발생합니다.

이제 테이블에 다른 값 4294967295를 삽입합니다.

mysql> insert into UnsignedDemoWithPositiveValue values(4294967295);
Query OK, 1 row affected (0.30 sec)

위에서 쿼리가 성공적으로 실행된 것을 확인할 수 있습니다.

이제 또 다른 예를 살펴보겠습니다. 음수 레코드를 삽입하면 다음 오류가 발생합니다. -

mysql> insert into UnsignedDemoWithPositiveValue values(-124);
ERROR 1264 (22003): Out of range value for column 'Distance' at row 1

이제 값이 124인 양수 값만 삽입합니다. 쿼리는 다음과 같습니다. -

mysql> insert into UnsignedDemoWithPositiveValue values(124);
Query OK, 1 row affected (0.86 sec)

위와 같이 쿼리가 성공적으로 실행되었습니다.

select 문을 사용하여 레코드를 표시해 보겠습니다. 쿼리는 다음과 같습니다 -

mysql> select *from UnsignedDemoWithPositiveValue;

이것이 출력입니다 -

+------------+
| Distance   |
+------------+
| 4294967295 |
| 124        |
+------------+
2 rows in set (0.00 sec)

위 내용은 MySQL에서 '서명되지 않음'은 무엇을 의미하며 언제 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제