當我向表中添加新列並將數據類型設置爲十進制例如10.2
保存後將其轉換爲10.0
我該怎麼做。MySQL + phpMyAdmin小數默認爲每次都爲零
有人可以提供SQL請求來創建具有十進制數據類型的表我想運行它,看看它是否會像這樣工作?
當我向表中添加新列並將數據類型設置爲十進制例如10.2
保存後將其轉換爲10.0
我該怎麼做。MySQL + phpMyAdmin小數默認爲每次都爲零
有人可以提供SQL請求來創建具有十進制數據類型的表我想運行它,看看它是否會像這樣工作?
檢查您的表格架構。對於十進制數據類型,需要decimals (D)
。
DECIMAL(M,D)
- 不能無符號的解壓後的浮點數。定義顯示器length (M)
和是需要。
示例模式
Create Table Stu(
id int(11) NOT NULL auto_increment,
field_name decimal(10,2) default NULL
);
換句話說,你需要一個逗號,而不是兩位數字之間的小數。您應該指定10,2而不是10.2 - 後者被解釋爲單個參數(轉換爲整數10),因此只定義了左側的位數。 – 2013-05-20 16:42:25
我使用phpMyAdmin界面編輯表時,也有類似的問題。每次我試圖將字段小數點(6)更改爲十進制(6,2);當我打開時,它每次都會返回小數點(6)。 如果所有其他都不能編輯它直接生成的代碼。它爲我工作。
使用此查詢來改變你的十進制值:
ALTER TABLE table_name CHANGE column_name column_name DECIMAL(10,2) UNSIGNED NOT NULL;
爲什麼不只是讓一個int和保存到數據庫之前轉換呢?或者設置字段的小數位爲0.這可能會起作用 – dreza 2012-03-26 06:01:49
顯示錶 – 2012-03-26 06:01:53
dreza的當前模式我該如何轉換? – JohnA 2012-03-26 06:06:41