MySQL은 널리 사용되는 관계형 데이터베이스 관리 시스템입니다. MySQL에서는 새 행이 삽입될 때 사용자가 열 값을 지정하지 않으면 해당 열이 자동으로 기본값으로 채워지도록 테이블의 열에 대한 기본값을 설정할 수 있습니다. 이 기사에서는 MySQL에서 기본값을 설정하는 방법에 대해 설명합니다.
기본값은 테이블에 새 행이 삽입될 때 해당 열에 자동으로 채워지는 값입니다. 사용자가 열 값을 지정하지 않으면 시스템은 자동으로 열을 기본값으로 채웁니다. 사용자가 값을 제공하면 해당 값이 열의 값으로 사용됩니다.
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로 설정합니다.
열의 기본값을 변경하려면 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 절에 기본 날짜와 시간을 지정했습니다.
열의 기본값을 제거하려면 ALTER TABLE 문을 사용할 수 있습니다. 예를 들어,created_at 열의 기본값을 제거해 보겠습니다.
ALTER TABLE users ALTER COLUMN Created_at DROP DEFAULT;
위 명령문에서는 ALTER COLUMN 명령을 사용하여 Create_at 열의 기본값을 제거합니다.
열의 기본값을 보려면 DESCRIBE 또는 SHOW CREATE TABLE 문을 사용할 수 있습니다. 예를 들어 DESCRIBE 문을 사용하여 사용자 테이블의 세부 정보는 다음과 같습니다.
DESCRIBE users;
출력은 다음과 같습니다.
Extrausers
username
created_at
is_active
id
id | int(11) | NO | PRI | NULL | |
---|---|---|---|---|---|
username | varchar(50) | 아니요 | NULL | ||
varchar( 50) | NO | NULL | |||
created_at | timestamp | YES | NULL | ||
is_active | tinyint(1) | YES | 1 | ||
위 표를 보면 Created_at 컬럼의 기본값이 NULL인데, 이는 해당 컬럼에 기본값이 없음을 의미한다. 또한 users 테이블의 전체 생성 문을 볼 수도 있습니다. | SHOW CREATE TABLE users; | 출력은 다음과 같습니다. | CREATE TABLE( | id int(11) NOT NULL AUTO_INCREMENT, | varchar(50) NOT NULL,
email varchar(50) NOT NULL, | 타임스탬프 NULL DEFAULT NULL,
요약
users
(id
int(11) NOT NULL AUTO_INCREMENT,username
varchar(50) NOT NULL,email
varchar(50) NOT NULL,created_at
timestamp NULL DEFAULT NULL,is_active
tinyint(1) DEFAULT '1',
PRIMARY KEY (id
MySQL에서 기본값을 설정하는 것은 유용한 기술입니다. DEFAULT 키워드를 사용하여 기본값을 설정할 수 있으며, ALTER TABLE 문을 사용하여 기본값을 변경하거나 삭제할 수 있습니다. 테이블 세부정보를 보면 열의 기본값에 대해 알아볼 수 있습니다. 기본값을 사용하면 삽입 문을 작성하는 수고가 줄어들고 사용자가 값을 제공하지 않으면 시스템이 미리 정의된 값을 사용하게 됩니다.
위 내용은 MySQL은 기본값을 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!