AUTO_INCREMENT

Database/Mysql 2007. 2. 7. 21:58
AUTO_INCREMENT 사용하기

새로운 레코드에 대해 유일한(unique) 값을 생성시킬 때 사용된다.
mysql> CREATE TABLE animals (
  -> id MEDIUMINT NOT NULL AUTO_INCREMENT,
  -> name CHAR(30) NOT NULL,
  -> PRIMARY KEY (id) );
Query OK, 0 rows affected (0.00 sec)
.
mysql> INSERT INTO animals (name) VALUES
  -> ('dog'),('cat'),('penguin'),('lax'),('whale'),('ostrich');
Query OK, 6 rows affected (0.00 sec)
Records: 6  Duplicates: 0  Warnings: 0
.
mysql> SELECT * FROM animals;
+----+---------+
| id | name    |
+----+---------+
|  1 | dog     |
|  2 | cat     |
|  3 | penguin |
|  4 | lax     |
|  5 | whale   |
|  6 | ostrich |
+----+---------+
6 rows in set (0.00 sec)

  • LAST_INSERT_ID() SQL 함수 또는 mysql_insert_id() C API 함수를 사용해서 가장 최근의 AUTO_INCREMENT 값을 불러올 수가 있다.
  • 다중 줄 삽입에 대해서는 LAST_INSERT_ID() 와 mysql_insert_id()는 실제로 삽입된 맨 처음 줄로부터 AUTO_INCREMENT 를 돌려 준다.
AUTO_INCREMENT의 값이 1인 아닌 것으로 시작으로 하기 위해, 그 값을 CREATE TABLE 또는 ALTER TABLE을 가지고 설정한다:
mysql> ALTER TABLE tbl AUTO_INCREMENT = 100;


명령어 라인에서 옵션 사용

shell> mysql -u root -p --execute="SELECT User, Host FROM user" mysql
shell> mysql -u root -p --execute="SELECT User, Host FROM mysql.user"
shell> mysql -u root -p -e "SELECT VERSION();SELECT NOW()"


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,