2017-02-20 88 views
0

我想輸入一個使用Visual Basic的飛機的小時數到Mysql數據庫中。插入小時數mysql數據庫

例如:

  • 機型X具有3158:25小時

這意味着它具有3158小時25分鐘

在我的數據庫中,我宣稱Number of HoursTime(格式)。

的問題是,Visual Studio中返回以下錯誤:

Incorrect time value: '3425:25' for column 'NbreHours' at row 1

+2

這超出了TIME數據類型的允許範圍。查看手冊:https://dev.mysql.com/doc/refman/5.7/en/time.html。你可能會更好地計算總分鐘數(或秒,如果你需要詳細程度)並將其存儲爲數字。當你想顯示它時,你總是可以再次將它轉換回來。 – ADyson

+1

請考慮選擇正確的答案。 – user3378165

回答

1

3425:25不是一個正確的Time格式,更改NbreHours列的格式nvarchar(10),這將解決您的問題。


的有意義的方式保存在hh:mm格式的時間來計算您記錄的總分鐘,然後在數據庫中保存爲int

首先和你的記錄的總分鐘數:

string time = "3158:25:00"; 
double minutes= TimeSpan.Parse(time).TotalMinutes; 

然後在數據庫中保存minutes變量作爲int

+0

如果我這樣做,如何將它轉換爲小時:分鐘 –

+1

我不確定nvarchar是存儲*小時*的最佳類型 –

+0

@ S.ElBahloul您的意思是當您從數據庫中提取數據時,你把它轉換回'hours:minutes'? – user3378165