在 MySQL 中使用函數作為預設值
在 MySQL 中,無法將函數指定為列的預設值。這可能會令人沮喪,尤其是當您想要使用函數為列產生唯一值(例如 UUID)時。
錯誤訊息
當您嘗試時要建立一個預設值是函數的表,您將收到類似於以下內容的錯誤訊息以下:
替代解決方案
雖然您不能直接使用函數作為預設值,但有一個解決方法涉及使用觸發器。觸發器是一種預存程序,當發生特定事件(例如向表中插入新行)時自動執行。以下是可用於為 app_users 表中的 api_key 欄位產生 UUID 的觸發器範例:
此觸發器將在將任何新行插入至 app_users 表中之前執行。對於每一行,它將 api_key 欄位的值設為 UUID。這確保每個新行都有唯一的 api_key 值。
以上是MySQL列可以使用函數作為預設值嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!