2011-05-03 49 views
0

我有以下MYSQL結構MySQL的精密度錯誤

id    double PK 
datenum   double(12,11) 
Timestamp  varchar(25) 
Min_F1_baro_20_ float 
Max_F1_baro_20_ float 
Mean_F1_baro_20_ float 

,但是當我試圖插入值,我得到了以下錯誤:

修訂

ERROR 1264: Out of range value for column 'datenum' at row 1 

SQL聲明:

INSERT INTO `forwind`.`metozean_aggregateddata_fino_0_01666667_14_01_2010_00_00` (`id`, `datenum`, `Timestamp`, `Min_F1_baro_20_`, `Max_F1_baro_20_`, `Mean_F1_baro_20_`) VALUES (1, 435.34, '2011-12-12 12:12:12', 12, 12, 12) 
+1

您使用了什麼插入查詢? – Ruben 2011-05-03 08:44:10

+0

你試圖插入什麼值? – DhruvPathak 2011-05-03 08:44:21

+0

不要使用主鍵的雙打!雙倍你永遠不能確定(1 = 2-1)由於舍入誤差是真實的。使用整數作爲PK。 – Johan 2011-05-03 10:47:28

回答

1

double(12,11)是太精確,我認爲;-)

編輯:我的意思是,嘗試double(12,4)或任何你需要的; (12,11)是雙精度的「超出範圍」