在 PostgreSQL 中建立包含 AUTO_INCREMENT 欄位的表格可能具有挑戰性,如提供的範例中遇到的語法錯誤所示。要解決此問題,我們需要了解 PostgreSQL 中 AUTO_INCREMENT 的正確語法。
與其他資料庫系統不同,PostgreSQL 沒有專用的 AUTO_INCREMENT 資料類型。相反,它提供兩種自動產生順序值的方法:
IDENTITY 欄位:
從 PostgreSQL 10 開始,可以使用標準 SQL IDENTITY 欄位。這些列可以以預設方式或始終以確定性方式產生。
要建立包含 IDENTITY 欄位的資料表:
<code class="language-sql">CREATE TABLE staff ( staff_id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, staff TEXT NOT NULL );</code>
SERIAL 資料型態:
在這些較舊的版本中,SERIAL 偽資料類型用於自動遞增主鍵。它會自動建立一個序列並將 DEFAULT 值設定為序列中的下一個值。
要建立包含 SERIAL 欄位的表:
<code class="language-sql">CREATE TABLE staff ( staff_id SERIAL PRIMARY KEY, staff TEXT NOT NULL );</code>
使用這些方法,您可以在 PostgreSQL 中建立具有自動產生的順序值作為主鍵的表。
以上是如何在 PostgreSQL 中實現 AUTO_INCRMENT 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!