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

MySQL의 auto_increment 열에 자체 값을 삽입하는 방법은 무엇입니까?

<시간/>

INSERT 문을 사용하여 이를 달성할 수 있습니다. 즉, 일반 삽입처럼 간단히 삽입할 수 있습니다. 구문은 다음과 같습니다 -

INSERT INTO yourTableName (yourIdColumnName,yourColumnName) values(value1,'value2');
Let us first create a table:
mysql> create table InsertValueInAutoIncrement
   -> (
   -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> UserName varchar(20)
   -> );
Query OK, 0 rows affected (0.59 sec)

이제 insert 명령을 사용하여 테이블에 일부 레코드를 삽입할 수 있습니다. 여기에 auto_increment 필드 UserId에 대한 자체 값도 삽입합니다. 쿼리는 다음과 같습니다 -

mysql> insert into InsertValueInAutoIncrement(UserName) values('John');
Query OK, 1 row affected (0.19 sec)
mysql> insert into InsertValueInAutoIncrement(UserName) values('Carol');
Query OK, 1 row affected (0.17 sec)
mysql> insert into InsertValueInAutoIncrement(UserName) values('Sam');
Query OK, 1 row affected (0.11 sec)
mysql> insert into InsertValueInAutoIncrement(UserName) values('Bob');
Query OK, 1 row affected (0.18 sec)
mysql> insert into InsertValueInAutoIncrement(UserId,UserName) values(100,'Maxwell');
Query OK, 1 row affected (0.18 sec)
mysql> insert into InsertValueInAutoIncrement(UserName) values('James');
Query OK, 1 row affected (0.20 sec)
mysql> insert into InsertValueInAutoIncrement(UserId,UserName) values(1000,'Larry');
Query OK, 1 row affected (0.12 sec)

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

mysql> select *from InsertValueInAutoIncrement;

다음은 표입니다 -

+--------+----------+
| UserId | UserName |
+--------+----------+
|      1 | John     |
|      2 | Carol    |
|      3 | Sam      |
|      4 | Bob      |
|    100 | Maxwell  |
|    101 | James    |
|   1000 | Larry    |
+--------+----------+
7 rows in set (0.00 sec)