我正在編寫一個應用程序以使用我的數據庫(在Microsoft SQL Server 2014上)。我有這樣的代碼:nvarchar值的轉換溢出了一個int列VB.Net
Private Sub Ucitaj()
Try
Dim command As New SqlCommand
command.Connection = Me.conn
command.CommandText = "select * from zaposleni where jmbg=" & Me.jmbg
Dim reader As SqlDataReader
reader = command.ExecuteReader
reader.Read()
Me.TextBox2.Text = reader("ime")
Me.TextBox3.Text = reader("prezime")
Me.TextBox4.Text = reader("br_rac")
Me.TextBox5.Text = reader("tel")
Me.TextBox6.Text = reader("datum_zap")
reader.Close()
Catch ex As Exception
End Try
End Sub
在線路:reader.Read(),它引發以下錯誤:{ 「該nvarchar的值 '1008994254963' 的轉化溢出int列」}
順便說一下,'1008995254963'是表格中第一個條目的'jmbg'列中的值。所以我想,當它進行比較時,它會嘗試將其轉換爲int。但是,我在數據庫中的數據類型是nvarchar(20),那麼爲什麼會發生這種情況呢?它不應該把它當作一個字符串嗎?爲什麼它會嘗試將它轉換爲int,當我基本上可以在此列中寫入單詞(不僅是數字)並且數據類型不是int時?在此先感謝
謝謝!非常清楚 :) –