programing

MYSQL 열 만들기에서 NULL vs DEFAULT NULL vs NULL DEFAULT NULL?

easyjava 2023. 9. 16. 10:06
반응형

MYSQL 열 만들기에서 NULL vs DEFAULT NULL vs NULL DEFAULT NULL?

아래 SQL table 정의는 나의 전 개발자에 의해 개발된 나의 MYSQL 데이터베이스에서 create table statement 중 하나입니다.

DROP TABLE IF EXISTS `classifieds`.`category_vehicles`;
CREATE TABLE `classifieds`.`category_vehicles`(
`adv_id_ref` BIGINT UNSIGNED NOT NULL,
`category_id_ref` TINYINT UNSIGNED NOT NULL,
`forsale_status` TINYINT (1) NOT NULL,
`vehicle_type_id_ref` TINYINT UNSIGNED NOT NULL,
`price` DOUBLE NULL DEFAULT NULL,
 PRIMARY KEY (`adv_id_ref`)
) ENGINE = INNODB CHARSET = latin1 COLLATE = latin1_swedish_ci ;

거기 진술서를 보세요.price이중 NULL 기본 NULL,

일반적으로 사용하는 경우:

price이중 NULL;

해당 열이 NULL 값을 허용하도록 활성화하려면 다음과 같이 하십시오.

그렇다면 이 세 가지 진술의 차이점은 무엇입니까?

  1. price이중 NULL;

  2. price이중 기본 NULL;

  3. price이중 NULL 기본 NULL;

차이가 없습니다.NULL DEFAULT NULL은(는) 암시적 기본값입니다.

CREATE TABLE 설명서에서:

  • NULL 또는 NOT NULL이 지정되지 않은 경우 열은 NULL이 지정된 것으로 처리됩니다.

"Data Type Default Values"(데이터 유형 기본값) 장에서:

  • 열 정의에 명시적 DEFAULT 값이 포함되지 않은 경우 MySQL은 다음과 같이 기본값을 결정합니다.열이 NULL을 값으로 사용할 수 있는 경우 열은 명시적 DEFAULT NULL 절로 정의됩니다.

다음 세 가지 경우 모두 해당됩니다.

price DOUBLE NULL;

price DOUBLE DEFAULT NULL;

price DOUBLE NULL DEFAULT NULL;

price는 두 배이며 null일 수 있으며 기본값은 null입니다.

price DOUBLE NULL;

허용합니다.price접수란NULL.

price DOUBLE DEFAULT NULL;

허용합니다.price접수란NULL기본값을 다음과 같이 설정합니다.NULL.

price DOUBLE NULL DEFAULT NULL;

두 번째 진술과 동일하게 수용합니다.NULL값을 지정하고 기본값을 설정합니다.

언급URL : https://stackoverflow.com/questions/25968054/null-vs-default-null-vs-null-default-null-in-mysql-column-creation

반응형