SQL server數據庫中的DateTime類型出現的問題


我們知道這個SQL server數據庫中的DateTime類型是數據庫應用開發中經常用到的一種數據類型,而C#語言中也有DateTime類型,雖然二者都是用來描述時間的,但是它們的默認值是不同的,這點必須注意,在開發過程中,二者之間相互適應關系處理不當,可能會產生不必要的麻煩,就等於浪費時間,所以記住。舉個例子看看:

創建一個windows應用程序,創建一個用戶信息實體類UserInfo.代碼如下:

注意的是:用戶信息類中的“操作日期”屬性是日期類型。

再創建一個業務操作類,UserInfoOperate,代碼如下:

最后創建窗體,代碼如下:

上述代碼中,並沒有給用戶信息實體中的“OperateDate”賦值。而是使用了C#的DateTime類型的默認值。

當我在點擊添加按鈕時,

出現了異常:從char數據類型到datetime數據類型的轉換導致datetime值越界。

(ctrl+D,Q)快速監視,發現OperateDate的值是:0001-1-1 0:00:00.

在SQL server數據庫中,DateTime類型的值必須在:1753年1月1日~9999年12月31日。而上述代碼中的operateDate的值0001很明顯的小於1753年。所以出現了錯誤。

找到問題之后,我給其屬性賦了合理的值。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM