我想從nvarchar
列(SQL Server數據庫)獲取一些值。我的代碼如下所示:如何從SQL Server數據庫獲取nvarchar數據
Dim value1 As String
Dim con2 As New System.Data.SqlClient.SqlConnection
con2.ConnectionString = "data source=AAA;initial catalog=DWH;integrated security=SSPI;"
con2.Open()
Dim retrieveGSFdata As New System.Data.SqlClient.SqlCommand
retrieveGSFdata.Connection = con2
retrieveGSFdata.CommandText = "SELECT * FROM table1"
Dim myGSFdataReader as System.Data.SqlClient.SqlDataReader
myGSFdataReader = retrieveGSFdata.ExecuteReader()
Dim iteratorGSF As Integer
iteratorGSF = 0
while(myGSFdataReader.read())
Select Case iteratorGSF
case 0:
if myGSFdataReader.IsDBNull(4)
value1 = 0
else
value1 = myGSFdataReader.GetString(4)
end if
End Select
iteratorGSF = iteratorGSF + 1
End while
myGSFdataReader.Close()
con2.Close()
只有在列中有數字值時才能正常工作。但在此列中存儲可變字符值,並且此類型的值不會顯示在頁面上。我不知道是什麼原因。
我試過用getValue.ToString
而不是getString
,但它也不起作用。
我很感謝您的幫助。
你說* SQL *(結構化查詢語言) ,但你的意思是** SQL Server **(MIcrosoft數據庫產品) - 對嗎? –
另外:你能告訴我們'table1'有哪些列(名字和它們的數據類型),並告訴我們你是如何讀出一個'nvarchar'列的?另外:你說*它沒有工作* - 你有錯誤嗎?如果是這樣的話:**你得到了什麼**確切的錯誤? –
@marc_s我認爲這是安全的假設,因爲他使用SqlClient命名空間,但好點。 –