Private Sub frmAddsite_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
showdata()
sb = New StringBuilder
sb.Append("SELECT DISTINCT Site_category from Site")
sb.Append(" ORDER BY Site_category ASC ")
connection()
da = New SqlDataAdapter(sb.ToString, conn)
ds = New DataSet
conn.Close()
For i = 0 To da.Fill(ds, "Site") - 1
CboCategory.Properties.Items.Add(ds.Tables("Site").Rows(i)("Site_category").ToString)
Next
End Sub
ขอบคุณ คุณ KaimีK มากๆค่ะ
จากที่คุณบอกมาหนูเลยสร้าง private sub ขึ้นมาอีกตัวหนึ่งเพื่อเรียกใช้แททนการโหลดฟอร์มชื่อว่า type
เพราะหนูไม่รู้จะเรียก From Lode ยังไง
แต่ว่า....เนื่องจากในตารางหนูมีบางค่าที่เป็นค่า NULL หนูเลยสร้างเงื่อนไข where ใหม่ปรากฏว่ามัน error เหมือนในรูปอ่ะค่ะ
หนูควรทำยังไงดีคะ แต่ถ้าตัตตรงเงื่อนไข where ออกไปค่าที่ได้มันก็ซ้ำกันอยู่น่ะค่ะ ทั้งๆที่ "DISTINCT" แล้วแท้ๆ
Code (VB.NET)
Private Sub type()
sb = New StringBuilder
sb.Append("SELECT DISTINCT Site_category from Site")
sb.Append(" ORDER BY Site_category ASC ")
sb.Append("WHERE Site_category IS NOT NULL")
connection()
da = New SqlDataAdapter(sb.ToString, conn)
ds = New DataSet
conn.Close()
For i = 0 To da.Fill(ds, "Site") - 1
CboCategory.Properties.Items.Add(ds.Tables("Site").Rows(i)("Site_category").ToString)
Next
End Sub
ERROR ตรง For i = 0 To da.Fill(ds, "Site") - 1 อ่ะคะว่า Incorrect syntax near the keyword 'WHERE'.
Private Sub type()
sb = New StringBuilder
sb.Append("SELECT DISTINCT Site_category from Site")
sb.Append(" WHERE Site_category IS NOT NULL")
sb.Append(" ORDER BY Site_category ASC ")
connection()
da = New SqlDataAdapter(sb.ToString, conn)
ds = New DataSet
conn.Close()
For i = 0 To da.Fill(ds, "Site") - 1
CboCategory.Properties.Items.Add(ds.Tables("Site").Rows(i)("Site_category").ToString)
Next
End Sub
เช่น ใน Site_category มีข้อมูลที่เป็นค่า a,b,c พอแก้ไขจาก a เป็น c
ข้อมูลที่ออกมาทาง combobox ก็เป็น a,b,c,c ปามานนี้อ่าค่ะ
หนูเลยไม่เข้าใจว่าหนู DISTINCT แล้วแต่ทำไมมันซ้ำกันอีกอ่ะค่าาา T^T
vb6 ขอตัวอย่างหน่อยค่ะ
ต้องการให้ข้้อมูลที่เราเพิ่มใหม่ในaccessจากฟอร์มย่อย มาโชว์ใน coombobox ในฟอร์มหลัก
ตอนนี้ที่ทำได้คือ ข้อมูลที่เพิ่มใหม่ลงฐานข้อมูล แต่ไม่โชว์ในcomboboxต้องเพิ่มใหม่ ข้อมูลที่เพิ่มก่อนหน้าจึงจะโชว์
Private Sub Combo2_KeyDown(KeyCode As Integer, Shift As Integer)
Set RS = New ADODB.Recordset
RS.Open "select * from Table2 where SN = '" & Combo2.Text & "'", cn, adOpenKeyset, adLockOptimistic
If Not RS.EOF Then
Me.Combo1.Text = RS!Device
End If
RS.Close
Set RS = Nothing
End Sub