0
我正在運行MySQL 5.5.47,並且有許多數據庫表的數據類型爲TINYINT(1)
。我試圖將這些更改爲BOOLEAN
但它不會改變它們。phpmyadmin不會將MySQL TINYINT(1)更改爲BOOLEAN數據類型
使用phpmyadmin 4.6.0然後去結構我使用下拉列將列設置爲BOOLEAN
。這將執行以下查詢:
ALTER TABLE `feedback` CHANGE `tick_receive_updates` `tick_receive_updates` BOOLEAN NOT NULL;
查詢成功運行。
當我查看結構時不更新:我認爲這是一個phpMyAdmin的錯誤列仍標記爲TINYINT(1)
起初,所以我跑
DESCRIBE feedback;
不幸的是問題仍然存在 - 列沒有改變TINYINT(1)
這是爲什麼?
有趣。我想知道爲什麼他們提供BOOLEAN作爲一種選擇呢?我將接受這個解決方案,因爲當我創建* new *表(而不是修改現有的表)並將其設置爲BOOLEAN時,它確實在使用DESCRIBE或查看Structure選項卡時顯示爲TINYINT(1)。很奇怪! – Andy
這不是一個選項,它是一個同義詞。 MySQL中有多個同義詞,並且有多個原因。 BOOLEAN是其他RDBMS上的真正數據類型,同義詞使開發人員可以更輕鬆地進行轉換。對於這一個,我沒有真正的其他解釋。 –