,我用它來CREATE
我TABLE
命令創建MySQL的一個表:與主文本鍵
CREATE TABLE carts(order_id TEXT(14), items TEXT, shipping INT, price INT
我想設置「ORDER_ID」作爲我的主鍵。我試圖ALTER
的TABLE
有:
ALTER TABLE `carts` ADD PRIMARY KEY(order_id)
但是返回錯誤:
#1170 - BLOB/TEXT column 'order_id' used in key specification without a key length
我的理解是指長度不正確設置的初始設置,所以我嘗試:
ALTER TABLE `carts` ADD PRIMARY KEY(order_id(14))
它返回相同的錯誤。在phpmyadmin中定義的類型是'tinytext';我期待看到TEXT(14)
。
我在PHP中通過PDO執行所有這些命令。將'order_id'列設置爲我的TABLE
的主鍵的正確方法是什麼?
將'text'更改爲'varchar'。您不能將文本設置爲主鍵。 –
您不能使用'TEXT'數據類型作爲主鍵。 – Barmar
你最後的陳述很好,它會創建長度爲14的主鍵。那麼錯誤是什麼? –