Private Sub Button73_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button73.Click
Dim serienaam
Dim oud
Dim aantal As Integer
Dim tt
Dim bedrag As Integer
Dim totaal As Integer
serienaam = ComboBox1.SelectedItem
oud = ComboBox2.SelectedItem
aantal = TextBox7.Text
tt = "" & serienaam & " " & oud & " " & aantal & " "
cmd = New SqlCommand("SELECT "" & oud & "" FROM series Where naamserie = "" & serienaam & "" ", con)
Dim sdr As SqlDataReader = cmd.ExecuteReader()
If sdr.Read = True Then
Dim week = sdr.Item(" "" & oud & "" ") "\gives a IndexOutOfRangeException...
bedrag = week
totaal = totaal + bedrag * aantal
sdr.Close()
"Label14.Text = totaal
ListBox1.Items.Add(tt)
End If
End Sub
जब मैं इसे चलाता हूं तो यह एक देता है IndexOutOfRangeException
पर
If sdr.Read = True Then
Dim week = sdr.Item(" "" & oud & "" ") |/<---|/gives a IndexOutOfRangeException...
bedrag = week
totaal = totaal + bedrag * aantal
उत्तर:
उत्तर № 1 के लिए 1ठीक है, मैं इसे समझने योग्य फैशन में जवाब देने की कोशिश करूंगा।
मुख्य मुद्दा आपकी एसक्यूएल क्वेरी है।
New SqlCommand("SELECT "" & oud & "" FROM series ...
आपकी क्वेरी कैसा दिखाई देगी यह है। ओड इस उदाहरण में "आईडी" होगा:
SELECT "ID" FROM series...
आप डेटाबेस को क्या कह रहे हैं यह है:
प्रत्येक पंक्ति के लिए आप स्ट्रिंग "आईडी" वापस भेज सकते हैं।
आप वास्तव में क्या चाहते हैं यह है, apostrophes की कमी पर ध्यान दें:
SELECT ID FROM series...
यह आईडी नामक कॉलम में मान वापस कर देगा।
इस लिंक को इस लिंक में चलाएं और आप बेहतर समझेंगे: http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all
SELECT "CustomerID", CustomerID FROM Customers;
बोनस के रूप में, मुझे लगता है कि कोड काम करेगा। बस इसे पहले की तरह एक ही स्थान पर रखें।
Dim oud as String
oud = ComboBox2.SelectedItem.ToString()
cmd = New SqlCommand("SELECT " & oud & " FROM series Where naamserie = "" & serienaam & "" ", con)
Dim week = sdr.Item(oud) "As rinukkusu said
जवाब के लिए 0 № 2
मुझे नहीं लगता कि आपको कॉलम नाम उद्धृत करने की आवश्यकता है:
Dim week = sdr.Item(oud)