做了一個 專案本地測了沒問題發布到正式環境上,幾天之后有個統計頁面報錯了,看了本地是正常的,
于是就排查,發現 ID 列 在對 字串轉int 時候 由于用了 Convert.TonInt16 長度不夠, 資料庫的ID 已經到了33000, 自己也知道 Convert.TonInt16 、
Convert.TonInt32、Convert.TonInt64、int.parse 使用有區別的, 但是做專案時候沒想到這里來,隨手就來了一個 int16 ,
這么一隨手日后就有bug了,以后寫代碼要嚴謹點,又去溫習了一遍每種使用的范圍,
int 范圍 -2,147,483,648 到 2,147,483,647
int16-數值范圍:-32768 到 32767
int32-數值范圍:-2,147,483,648 到 2,147,483,647
int64-數值范圍:-9223372036854775808 到 9223372036854775808
附一個別人的地址:https://blog.csdn.net/judongbin123/article/details/81093275,寫的是 16 進制與2進制的轉換,
https://www.cnblogs.com/liuqifeng/p/10405121.html 這個地址是解讀 Sqlserver資料庫中char、varchar、nchar、nvarchar的區別及查詢表結構
https://zhidao.baidu.com/question/233079122.html 為什么nvarchar(10)可以存10個漢字,varchar(10)只能存5個漢字
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/57148.html
標籤:其他
