PDA

View Full Version : ساخه آرایه جهت استفاده در دستورات sql در محیط vb.net



sh2007
سه شنبه 05 مهر 1390, 10:46 صبح
دوستان سلام
این د ستور sql که با عملگر in استفاده شده برای اکثر دوستان آشناست


StrQuery = "SELECT au_lname, state FROM authors WHERE state IN ('CA', 'IN', 'MD')"


توی این دستور بدنبال نام سه تا ایالت هست
حالا اگه کاربر 5 تا یا 6 تا و یا هرچند نام ایالت را بخواهد با استفاده از چطور می توان عبارات بعد از عملگر in را وارد کرد
من تا این قسمت پیش رفتم


Private Sub BtnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAdd.Click
lstArray.Items.Add(txtVariable.Text)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim bytCount As Byte

bytCount = lstArray.Items.Count
Dim aryTest(bytCount) As String

Me.Text = bytCount

Dim StrQuery As String


StrQuery = "SELECT au_lname, state FROM authors WHERE state IN ('CA', 'IN', 'MD')"


End Sub




اما موندم چطور مقادیری را که در لیست باکس هست بخوانم و توی دستور sql قرار بدم
و یا اصلا دو ستان راه حل بهتری دارن
ممنون

Mani_rf
سه شنبه 05 مهر 1390, 19:13 عصر
اصلاح کد خودت :

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim StrQuery As String = "SELECT au_lname, state FROM authors WHERE state IN ( " ''CA', 'IN', 'MD')"
Dim bytCount As Byte = lstArray.Items.Count - 1

For I As Integer = 0 To bytCount
StrQuery &= " '" & lstArray.Items(I) & "',"
Next

StrQuery = StrQuery.Substring(0, StrQuery.Length - 1) + ")"

MsgBox(StrQuery)
End Sub