最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL 序列 AUTO_INCREMENT詳解及實例代碼

 更新時間:2017年02月04日 08:49:27   投稿:lqh  
這篇文章主要介紹了MySQL 序列 AUTO_INCREMENT詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下

MySQL 序列 AUTO_INCREMENT詳解及實例代碼

MySQL序列是一組整數(shù):1, 2, 3, ...,由于一張數(shù)據(jù)表只能有一個字段自增主鍵, 如果你想實現(xiàn)其他字段也實現(xiàn)自動增加,就可以使用MySQL序列來實現(xiàn)。

本章我們將介紹如何使用MySQL的序列。

使用AUTO_INCREMENT

MySQL中最簡單使用序列的方法就是使用 MySQL AUTO_INCREMENT 來定義列。

實例

以下實例中創(chuàng)建了數(shù)據(jù)表insect, insect中id無需指定值可實現(xiàn)自動增長。

mysql> CREATE TABLE insect
  -> (
  -> id INT UNSIGNED NOT NULL AUTO_INCREMENT,
  -> PRIMARY KEY (id),
  -> name VARCHAR(30) NOT NULL, # type of insect
  -> date DATE NOT NULL, # date collected
  -> origin VARCHAR(30) NOT NULL # where collected
);
Query OK, 0 rows affected (0.02 sec)
mysql> INSERT INTO insect (id,name,date,origin) VALUES
  -> (NULL,'housefly','2001-09-10','kitchen'),
  -> (NULL,'millipede','2001-09-10','driveway'),
  -> (NULL,'grasshopper','2001-09-10','front yard');
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM insect ORDER BY id;
+----+-------------+------------+------------+
| id | name    | date    | origin   |
+----+-------------+------------+------------+
| 1 | housefly  | 2001-09-10 | kitchen  |
| 2 | millipede  | 2001-09-10 | driveway  |
| 3 | grasshopper | 2001-09-10 | front yard |
+----+-------------+------------+------------+
3 rows in set (0.00 sec)

 獲取AUTO_INCREMENT值

在MySQL的客戶端中你可以使用 SQL中的LAST_INSERT_ID( ) 函數(shù)來獲取最后的插入表中的自增列的值。

在PHP或PERL腳本中也提供了相應(yīng)的函數(shù)來獲取最后的插入表中的自增列的值。

PERL實例

使用 mysql_insertid 屬性來獲取 AUTO_INCREMENT 的值。 實例如下:

$dbh->do ("INSERT INTO insect (name,date,origin)
VALUES('moth','2001-09-14','windowsill')");
my $seq = $dbh->{mysql_insertid};

PHP實例

PHP 通過 mysql_insert_id ()函數(shù)來獲取執(zhí)行的插入SQL語句中 AUTO_INCREMENT列的值。

mysql_query ("INSERT INTO insect (name,date,origin)
VALUES('moth','2001-09-14','windowsill')", $conn_id);
$seq = mysql_insert_id ($conn_id);

 重置序列

如果你刪除了數(shù)據(jù)表中的多條記錄,并希望對剩下數(shù)據(jù)的AUTO_INCREMENT列進行重新排列,那么你可以通過刪除自增的列,然后重新添加來實現(xiàn)。 不過該操作要非常小心,如果在刪除的同時又有新記錄添加,有可能會出現(xiàn)數(shù)據(jù)混亂。操作如下所示:

mysql> ALTER TABLE insect DROP id;
mysql> ALTER TABLE insect
  -> ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST,
  -> ADD PRIMARY KEY (id);

 設(shè)置序列的開始值

一般情況下序列的開始值為1,但如果你需要指定一個開始值100,那我們可以通過以下語句來實現(xiàn):

mysql> CREATE TABLE insect
  -> (
  -> id INT UNSIGNED NOT NULL AUTO_INCREMENT = 100,
  -> PRIMARY KEY (id),
  -> name VARCHAR(30) NOT NULL, # type of insect
  -> date DATE NOT NULL, # date collected
  -> origin VARCHAR(30) NOT NULL # where collected
);

或者你也可以在表創(chuàng)建成功后,通過以下語句來實現(xiàn):

mysql> ALTER TABLE t AUTO_INCREMENT = 100;

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:

相關(guān)文章

最新評論

上高县| 青铜峡市| 湖南省| 新余市| 靖边县| 镇康县| 深水埗区| 青田县| 青冈县| 乌兰察布市| 崇文区| 宜城市| 清远市| 江门市| 刚察县| 昭苏县| 白水县| 武定县| 赣榆县| 鄂伦春自治旗| 桐柏县| 崇阳县| 东莞市| 藁城市| 喀什市| 丰都县| 亳州市| 伊吾县| 丹东市| 元朗区| 上犹县| 双城市| 娄底市| 南和县| 仁怀市| 鹤岗市| 宁津县| 通州市| 桃园市| 南乐县| 上思县|