Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 필드를 기본값으로 재설정하시겠습니까?

<시간/>

MySQL에는 MySQL 필드를 기본값으로 재설정할 수 있는 두 가지 방법이 있습니다. 하나는 기본 키워드이고 다른 하나는 default() 함수입니다.

사례 1 :기본 키워드를 사용합니다. 구문은 다음과 같습니다.

UPDATE yourTableName SET yourColumnName=default where yourCondition;

사례 2 :default() 함수를 사용합니다. 구문은 다음과 같습니다.

UPDATE yourTableName SET yourColumnName=default(yourColumnName) where yourCondition;

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.

mysql> create table Default_Demo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(20),
   -> Age int,
   -> Salary float,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.73 sec)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다.

mysql> insert into Default_Demo(Name,Age,Salary) values('John',23,405.56);
Query OK, 1 row affected (0.18 sec)
mysql> insert into Default_Demo(Name,Age,Salary) values('Carol',25,1000.98);
Query OK, 1 row affected (0.22 sec)
mysql> insert into Default_Demo(Name,Age,Salary) values('Larry',21,987.24);
Query OK, 1 row affected (0.09 sec)
mysql> insert into Default_Demo(Name,Age,Salary) values('Sam',24,986.10);
Query OK, 1 row affected (0.17 sec)
mysql> insert into Default_Demo(Name,Age,Salary) values('Mike',22,10000.50);
Query OK, 1 row affected (0.17 sec)
mysql> insert into Default_Demo(Name,Age,Salary) values('David',26,100.45);
Query OK, 1 row affected (0.20 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다.

mysql> select *from Default_Demo;

다음은 출력입니다.

+----+-------+------+---------+
| Id | Name  | Age  | Salary  |
+----+-------+------+---------+
|  1 | John  |   23 | 405.56  |
|  2 | Carol |   25 | 1000.98 |
|  3 | Larry |   21 | 987.24  |
|  4 | Sam   |   24 | 986.1   |
|  5 | Mike  |   22 | 10000.5 |
|  6 | David |   26 | 100.45  |
+----+-------+------+---------+
6 rows in set (0.00 sec)

다음은 MySQL 필드를 기본값으로 재설정하는 쿼리입니다.

사례 1: 기본 키워드를 사용합니다. 쿼리는 다음과 같습니다.

mysql> update Default_Demo set Age=Default where Id=6;
Query OK, 1 row affected (0.10 sec)
Rows matched: 1 Changed: 1 Warnings: 0

이제 테이블 레코드를 확인할 수 있습니다. 열 Age는 NULL이고 Id는 6입니다. 쿼리는 다음과 같습니다.

mysql> select *from Default_Demo;

다음은 출력입니다.

+----+-------+------+---------+
| Id | Name  | Age  | Salary  |
+----+-------+------+---------+
|  1 | John  |   23 | 405.56  |
|  2 | Carol |   25 | 1000.98 |
|  3 | Larry |   21 | 987.24  |
|  4 | Sam   |   24 | 986.1   |
|  5 | Mike  |   22 | 10000.5 |
|  6 | David | NULL | 100.45  |
+----+-------+------+---------+
6 rows in set (0.00 sec)

Age 컬럼이 기본값 NULL로 업데이트된 Id 6을 보십시오.

사례 2: 이제 default() 함수도 사용할 수 있습니다. 여기서 Salary 열을 Id가 6인 기본값으로 업데이트합니다. 쿼리는 다음과 같습니다.

mysql> update Default_Demo set Salary=Default(Salary) where Id=6;
Query OK, 1 row affected (0.21 sec)
Rows matched: 1 Changed: 1 Warnings: 0

이제 Id가 6인 테이블 레코드를 확인하십시오.

mysql> select *from Default_Demo where Id=6;

다음은 출력입니다.

+----+-------+------+--------+
| Id | Name  | Age  | Salary |
+----+-------+------+--------+
|  6 | David | NULL | NULL   |
+----+-------+------+--------+
1 row in set (0.00 sec)

급여 열을 보세요. 기본값 NULL이 성공적으로 업데이트되었습니다.