ADO Connection Object ในบรรดาโปรแกรมที่ถูกพัฒนาโดยบริษัท Microsoft ล้วนแต่มีการออกแบบให้ใช้ ADO ในการที่จะทำการเชื่อมต่อกับฐานข้อมูล ไม่ว่าจะเป็น VB,ASP,ASP.NET หรือโปรแกรมอื่น ๆ อีกมากมาย เหตุผลเพราะ ADO ได้ถูกออกแบบมาเพื่อรองรับการใช้งานกับ Database หลาย ๆ ประเภท รวมทั้งคำสั่งที่ง่ายต่อการใช้งานและความเร็วในการเชื่อมต่อฐานข้อมูลด้วยครับ ในบทเรียนนี้ในส่วนของ ASP และ ASP.NET ผมได้ใช้ ADO เข้ามาจัดการกับฐานข้อมูลทั้งหมดครับ และใช้ Connection Object เป็นคำสั่งที่เข้ามาจัดการเชื่อมต่อกับฐานข้อมูล
Open - Method
เปิด Connection กับ Database ผ่าน Driver หรือ Data Source
Dim Conn,strSQL,objRec
Set Conn = Server.Createobject("ADODB.Connection")
Conn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("mydatabase.mdb"),"" , ""
strSQL = "SELECT * FROM customer "
Set objRec = Server.CreateObject("ADODB.Recordset")
objRec.Open strSQL, Conn, 1,3
https://www.thaicreate.com/asp/asp-ms-access-connect-database.html
Execute - Method
ทำการประมวลผล SQL Query ที่ต้องการ
BeginTrans - Method
เป็นการเริ่มการใช้งาน Transaction Record
'*** Transaction Start ***'
Conn.BeginTrans
'*** Save Form ***'
strSQL = ""
strSQL = strSQL &"INSERT INTO customer "
strSQL = strSQL &"(CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('"&Request.Form("txtCustomerID")&"','"&Request.Form("txtName")&"','"&Request.Form("txtEmail")&"' "
strSQL = strSQL &",'"&Request.Form("txtCountryCode")&"','"&Request.Form("txtBudget")&"','"&Request.Form("txtUsed")&"') "
Set objExec = Conn.Execute(strSQL)
https://www.thaicreate.com/asp/asp-ms-access-transaction-commit-rollback.html
CommitTrans - Method
เป็นการบันทึก Transaction ทั้งหมดที่ได้กระทำหลังจากที่มีการ BeginTrans
'*** Transaction Start ***'
Conn.BeginTrans
'*** Save Form ***'
strSQL = ""
strSQL = strSQL &"INSERT INTO customer "
strSQL = strSQL &"(CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('"&Request.Form("txtCustomerID")&"','"&Request.Form("txtName")&"','"&Request.Form("txtEmail")&"' "
strSQL = strSQL &",'"&Request.Form("txtCountryCode")&"','"&Request.Form("txtBudget")&"','"&Request.Form("txtUsed")&"') "
Set objExec = Conn.Execute(strSQL)
Set objExec = Nothing
'*** Already Exist Save Form (CustomerID is PK)***'
strSQL = ""
strSQL = strSQL &"INSERT INTO customer "
strSQL = strSQL &"(CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('"&Request.Form("txtCustomerID")&"','"&Request.Form("txtName")&"','"&Request.Form("txtEmail")&"' "
strSQL = strSQL &",'"&Request.Form("txtCountryCode")&"','"&Request.Form("txtBudget")&"','"&Request.Form("txtUsed")&"') "
Set objExec = Conn.Execute(strSQL)
Set objExec = Nothing
If Err.Number = 0 Then
'*** Commit Transaction ***'
Conn.CommitTrans
Response.write("Save Done.")
Else
'*** Rollback Transaction ***'
Conn.RollbackTrans
Response.write("Error Save ["&strSQL&"] ("&Err.Description&")")
End If
https://www.thaicreate.com/asp/asp-ms-access-tranasction-commit-rollback.html
RollbackTrans - Method
เป็นการยกเลิก Transaction ทั้งหมดที่ได้กระทำหลังจากที่มีการ BeginTrans
'*** Transaction Start ***'
Conn.BeginTrans
'*** Save Form ***'
strSQL = ""
strSQL = strSQL &"INSERT INTO customer "
strSQL = strSQL &"(CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('"&Request.Form("txtCustomerID")&"','"&Request.Form("txtName")&"','"&Request.Form("txtEmail")&"' "
strSQL = strSQL &",'"&Request.Form("txtCountryCode")&"','"&Request.Form("txtBudget")&"','"&Request.Form("txtUsed")&"') "
Set objExec = Conn.Execute(strSQL)
Set objExec = Nothing
'*** Already Exist Save Form (CustomerID is PK)***'
strSQL = ""
strSQL = strSQL &"INSERT INTO customer "
strSQL = strSQL &"(CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('"&Request.Form("txtCustomerID")&"','"&Request.Form("txtName")&"','"&Request.Form("txtEmail")&"' "
strSQL = strSQL &",'"&Request.Form("txtCountryCode")&"','"&Request.Form("txtBudget")&"','"&Request.Form("txtUsed")&"') "
Set objExec = Conn.Execute(strSQL)
Set objExec = Nothing
If Err.Number = 0 Then
'*** Commit Transaction ***'
Conn.CommitTrans
Response.write("Save Done.")
Else
'*** Rollback Transaction ***'
Conn.RollbackTrans
Response.write("Error Save ["&strSQL&"] ("&Err.Description&")")
End If
https://www.thaicreate.com/asp/asp-ms-access-tranasction-commit-rollback.html
Close - Method
ปิดการเชื่อมต่อ และ Object
Reference : https://www.thaicreate.com/ado/adoref.htm
|