MySQL은 기본값을 설정

王林
풀어 주다: 2023-05-23 09:09:37
원래의
9558명이 탐색했습니다.

MySQL은 널리 사용되는 관계형 데이터베이스 관리 시스템입니다. MySQL에서는 새 행이 삽입될 때 사용자가 열 값을 지정하지 않으면 해당 열이 자동으로 기본값으로 채워지도록 테이블의 열에 대한 기본값을 설정할 수 있습니다. 이 기사에서는 MySQL에서 기본값을 설정하는 방법에 대해 설명합니다.

  1. 기본값은 무엇인가요?

기본값은 테이블에 새 행이 삽입될 때 해당 열에 자동으로 채워지는 값입니다. 사용자가 열 값을 지정하지 않으면 시스템은 자동으로 열을 기본값으로 채웁니다. 사용자가 값을 제공하면 해당 값이 열의 값으로 사용됩니다.

  1. 기본값을 설정하는 방법은 무엇인가요?

MySQL에서는 DEFAULT 키워드를 사용하여 기본값을 설정할 수 있습니다. 이 키워드는 새 행을 삽입할 때 기본값을 사용하도록 시스템에 지시합니다. 예는 다음과 같습니다.

먼저 id, 사용자 이름, 이메일이라는 세 개의 열이 있는 간단한 테이블을 만들어 보겠습니다.

CREATE TABLE users(
id INT NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
email VARCHAR (50) NOT NULL,
PRIMARY KEY (id)
);

다음으로 테이블에 기본값이 포함된 새로운 열created_at을 추가합니다. 이 열에는 생성 날짜와 시간이 포함됩니다.

ALTER TABLE users ADD Created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP;

위 명령문에서는 ADD 키워드를 사용하여 테이블에 새 열을 추가했습니다. DEFAULT CURRENT_TIMESTAMP 절을 사용하여 이 열의 기본값을 현재 타임스탬프로 설정합니다. 즉, 새 행을 삽입할 때 시스템이 자동으로 Created_at 열을 현재 시간으로 설정합니다.

상수를 사용하여 기본값을 설정할 수도 있습니다. 예를 들어 부울 열을 설정하려면 다음 문을 사용할 수 있습니다.

ALTER TABLE users ADD is_active BOOLEAN DEFAULT TRUE;

위 문에서는 DEFAULT 절을 사용하여 부울의 기본값을 설정합니다. 열을 TRUE로 설정합니다.

  1. 기본값을 수정하는 방법은 무엇인가요?

열의 기본값을 변경하려면 ALTER TABLE 문을 사용할 수 있습니다. 예를 들어,created_at 열의 기본값을 2020년 1월 1일로 변경해 보겠습니다.

ALTER TABLE users MODIFY Created_at TIMESTAMP DEFAULT '2020-01-01 00:00:00';

위 문에서는 MODIFY 키워드를 사용합니다. Create_at 열의 데이터 유형과 기본값을 변경합니다. 새 행을 삽입할 때 자동으로 사용되는 DEFAULT 절에 기본 날짜와 시간을 지정했습니다.

  1. 기본값을 삭제하는 방법은 무엇인가요?

열의 기본값을 제거하려면 ALTER TABLE 문을 사용할 수 있습니다. 예를 들어,created_at 열의 기본값을 제거해 보겠습니다.

ALTER TABLE users ALTER COLUMN Created_at DROP DEFAULT;

위 명령문에서는 ALTER COLUMN 명령을 사용하여 Create_at 열의 기본값을 제거합니다.

  1. 기본값을 확인하는 방법은 무엇인가요?

열의 기본값을 보려면 DESCRIBE 또는 SHOW CREATE TABLE 문을 사용할 수 있습니다. 예를 들어 DESCRIBE 문을 사용하여 사용자 테이블의 세부 정보는 다음과 같습니다.

DESCRIBE users;

출력은 다음과 같습니다.

Extra users username created_at is_active id auto_increment 위 표를 보면 Created_at 컬럼의 기본값이 NULL인데, 이는 해당 컬럼에 기본값이 없음을 의미한다. 또한 users 테이블의 전체 생성 문을 볼 수도 있습니다. SHOW CREATE TABLE users; 출력은 다음과 같습니다. CREATE TABLE( varchar(50) NOT NULL, 타임스탬프 NULL DEFAULT NULL, tinyint(1) DEFAULT '1', PRIMARY KEY ()
id int(11) NO PRI NULL
username varchar(50) 아니요 NULL
email varchar( 50) NO NULL
created_at timestamp YES NULL
is_active tinyint(1) YES 1
idint(11) NOT NULL AUTO_INCREMENT,emailvarchar(50) NOT NULL,
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

위의 표를 보면,created_at 컬럼의 기본값이 NULL인 것을 알 수 있습니다.

요약

users(
idint(11) NOT NULL AUTO_INCREMENT,
usernamevarchar(50) NOT NULL,
emailvarchar(50) NOT NULL,
created_attimestamp NULL DEFAULT NULL,
is_activetinyint(1) DEFAULT '1',
PRIMARY KEY (idMySQL에서 기본값을 설정하는 것은 유용한 기술입니다. DEFAULT 키워드를 사용하여 기본값을 설정할 수 있으며, ALTER TABLE 문을 사용하여 기본값을 변경하거나 삭제할 수 있습니다. 테이블 세부정보를 보면 열의 기본값에 대해 알아볼 수 있습니다. 기본값을 사용하면 삽입 문을 작성하는 수고가 줄어들고 사용자가 값을 제공하지 않으면 시스템이 미리 정의된 값을 사용하게 됩니다.

위 내용은 MySQL은 기본값을 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!