Page 1 of 1

ผมอยากให้ record ที่เลือกจาก mysql แสดงใน textbox ด้วย vba ต้องทำยังไงต่อครับ

Posted: Sat May 21, 2022 5:45 am
by 10idlnw
ตอนนี้ผมเชื่อมต่อได้แล้ว แต่ไม่รู้จะดึง record ที่ต้องการมาแสดงจาก mysql มาแสดงใน textbox ที่กำหนด ต้องใช้คำสั่งไหนครับ

Code: Select all

Private Sub CommandButton1_Click()
    Dim cnn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim id As String
    Dim SQLStr As String
   
    id = t1.Value
    brand = t2.Value
   
   Set cnn = New ADODB.Connection
   cnn.ConnectionString = "Driver={MySQL ODBC 8.0 Unicode Driver};Server=localhost;Database=koonsubdb;USER=root;PASSWORD=004771;Trusted_Connection=Yes;"
    cnn.Open

        SQLStr = "SELECT * FROM car WHERE car_brand = ' & car_id & ' "
'        cnn.Execute SQLStr

    Set rs = CreateObject("ADODB.Recordset")
    rs.Open SQLStr, cnn, adOpenStatic
    
    'ตรงนี้คือจุดที่อยากให้ record ที่เลือกจาก mysql มาแสดงครับ
    t2.Value = "จะต้องใช้คำสั่งอะไรตรงนี้ครับ" 

    Set rs = Nothing
   cnn.Close
End Sub

Re: ผมอยากให้ record ที่เลือกจาก mysql แสดงใน textbox ด้วย vba ต้องทำยังไงต่อครับ

Posted: Sat May 21, 2022 6:28 am
by snasui
:D ใช้ rs.fields(x) มาช่วยแสดงคำตอบได้ครับ เช่น

t2.Value = rs.fields(0) แสดงค่าของ Fields แรก
t2.Value = rs.fields(1) แสดงค่าของ Fields ที่สอง เป็นต้น

Re: ผมอยากให้ record ที่เลือกจาก mysql แสดงใน textbox ด้วย vba ต้องทำยังไงต่อครับ

Posted: Sat May 21, 2022 9:53 pm
by 10idlnw
ขอบคุณมากครับอาจารย์ แล้วถ้าผมอยากวน loop for พวกนี้ ต้องเขียนแบบไหนครับ

Code: Select all

    
    t2.Value = rs.Fields(1).Value
    t3.Value = rs.Fields(2).Value
    t4.Value = rs.Fields(3).Value
    t5.Value = rs.Fields(4).Value
    t6.Value = rs.Fields(5).Value
 

Re: ผมอยากให้ record ที่เลือกจาก mysql แสดงใน textbox ด้วย vba ต้องทำยังไงต่อครับ

Posted: Sun May 22, 2022 5:50 am
by snasui
:D ตัวอย่างการ Loop ครับ

Code: Select all

for i = 1 to 5
    me.controls("t" & i + 1).value = rs.fields(i).value
next i