OSWikiHK: 請協力 GPLv3 的中文翻譯工作。
PEAR::DB Sequence
OSWikiHK,自由中文開源知識庫
現在很多 DBMS 都有支援 sequence , 方便產生資料庫的主鍵 (Primary Key) ,不過使用方法都有不同, MySQL 甚至用自動增值 (Auto_Increment) 的屬性處理類始 sequence 的應用。 不統一的使用介面自然令程式的可移殖性大減。 PEAR::DB 就提供了一堆方法去處理這個問題。
PEAR::DB 用 $dbh->nextId 來統一運用 sequence 的介面。
執行 nextId 會俾回將 sequence 的值遞增一並值回其值,
如果 sequence 不存在, nextId 就會自動建立 sequence
,如下:
$name = 'Maddog';
$id = $dbh->nextId('test_table');
$dbh->query("INSERT INTO test_table (id, name) VALUES($id, '$name');
如您不想 nextId 自動建立 sequence 您可以用
$dbh->nextId($seqName, false)。
PEAR::DB 亦提供 createSequence 和 dropSequence
來建立或刪除一 sequence ,但在一般情況下,
您都不會用得著他們。

