ถ้าต้องการติดต่อกับ Table ผ่านทาง ADO โดยใช้ sql แทนชื่อ Table ได้หรือเปล่า
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 305   3
URL.หัวข้อ / URL
ถ้าต้องการติดต่อกับ Table ผ่านทาง ADO โดยใช้ sql แทนชื่อ Table ได้หรือเปล่า

ข้อ 1.
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset

Set cnn = New ADODB.Connection
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\Hosst\db\Misako.mdb"

Set rs = New ADODB.Recordset
rs.Open "[AGENT MASTER]", cnn, adOpenDynamic, adLockPessimistic

ชื่อตาราง AGENT MASTER จะเปลี่ยนเป็นประโยค SQL ที่เชื่อมกันหลายตารางได้หรือเปล่า

ข้อ 2.
ถ้าเราต้องการจะติดต่อกับ SQL Server 2000
สมมุติว่า เชื่อเครื่อง server = Hosst, ชื่อฐานข้อมูล= BBC, User=somchai, Password=123
จะเขียนยังไงครับ


3 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R05624
1 ก็เขียนเป็น SQL แทนลงไปได้เลย

rs.Open "Select ... From ... Where ...", cnn, adOpenDynamic, adLockPessimistic

วิธีที่ง่ายคือ ให้สร้างเป็น Query ไว้แล้วค่อยอ้างอิงเป็นชื่อ Query แทน

rs.Open "qryQuery1", cnn, adOpenDynamic, adLockPessimistic

2. ให้ค้นกระทู้เก่าๆ ด้วยคำว่า SQL Server หรือ OLE DB ก็ได้ครับ
จะมีตัวอย่างให้ดูด้วย
2 @R05631
อีกข้อนะครับ
ผมทำตามที่อาจารย์สุภาพบอกแล้วได้ผลครับ แต่ถ้าเราต้องการกำหนดรูปแบบให้เป็น Datasheet หรือ Continuous จะต้องกำหนดอะไรบ้างครับ
เพราะว่าตอนนี้มันจะออกมาเรคอร์ดแรกครับ
3 @R05635
ลองค้นด้วยคำว่า Set Me.Recordset ดูครับ จะมีตัวอย่างโค้ดให้ศึกษาด้วย
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0904s