Mysql
檢查列是否允許 NULL 的函式
有沒有辦法編寫一個插入/更新查詢來檢查列是否允許
NULLs
:如果它確實將列設置為NULL
, 並且''
(空字元串) 否則?我會是這樣的:
UPDATE mytable SET field = IF(A_FUNCTION_TO_CHECK_IF_ALLOWS_NULL(), NULL, '');
您可以查詢 INFORMATION_SCHEMA:
http://dev.mysql.com/doc/refman/5.0/en/columns-table.html
在 INFORMATION_SCHEMA.COLUMNS 表中有一個 IS_NULLABLE 列。
我想你可以把它變成一個函式,但我可能會把這個邏輯放在外面。
凱德的回答是正確的,但資訊直接來自連結:
SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'mytable'