งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Seree Chinodom seree@buu.ac.th Connection Object Seree Chinodom seree@buu.ac.th Computer Science, BUU.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Seree Chinodom seree@buu.ac.th Connection Object Seree Chinodom seree@buu.ac.th Computer Science, BUU."— ใบสำเนางานนำเสนอ:

1 Seree Chinodom seree@buu.ac.th
Connection Object Seree Chinodom Computer Science, BUU

2

3 ActiveX Data Object (ADO)
แนวทางของ Universal Data Access (UDA) สะดวกและง่ายขึ้น OLE DB เป็นตัวจัดการสามารถทำให้เข้าถึงข้อมูลได้ในทุก ๆ ที่ และ

4 การแก้ปัญหาการเข้าถึงข้อมูลแบบกระจาย
วิธีการ Universal Data Storage คือ การใช้ฐานข้อมูลสัมพันธ์ (Relational Database) ในการเก็บข้อมูลทุก ๆ ชนิด เช่น Oracle , Sybase , Informix และ Microsoft เป็นต้น วิธีการ Universal Data Access (UDA) คือ การเข้าถึงข้อมูลในที่ที่ข้อมูลบันทึกอยู่ โดยอาศัย OLE DB เป็นตัวจัดการ OLE DB เป็นกลุ่มคำสั่งของ Component Object Model ( COM ) ที่เป็นทางเชื่อมต่อไปยัง Data provider กล่าวคือ ถ้าข้อมูลที่จะใช้นั้นอยู่บน Application ใด ๆ ก็ตามที่มี Data provider สำหรับ OLE DB ข้อมูลนั้นก็จะสามารถเข้าถึงได้โดยวิธีการ Universal Data Access

5 ActiveX Data Object (ADO)
Objects ทั้ง 7 ของ ADO มีดังนี้ - Connection - Command - Parameter - Recordset - Field - Property - Error Collections ทั้ง 4 ของ ADO มีดังนี้ - Field - Properties - Parameter

6 ActiveX Data Object (ADO)
Connection, Recordset และ Command เป็นส่วนที่สำคัญที่สุดและใช้งานมากที่สุด ทั้งสามตัวเป็น object ในระดับบนสุดไม่ขึ้นกับ object อื่น ๆ จึงสามารถสร้างและทำลาย object ทั้งสามนี้ได้โดยตรง สำหรับ Parameter object ทำงานเป็นอิสระก็จริงแต่เวลาจะนำมาใช้งาน ต้องใช้งานรุ่มกับ Command object เท่านั้น

7 ActiveX Data Object (ADO)
สำหรับ Field , Error และ Property object ไม่สามารถทำงานได้โดยตรง แต่จะสร้างได้เมื่อมี Object ระดับบนอยู่ก่อนแล้ว ใช้ Connection Object สำหรับสร้างการเชื่อมต่อระหว่างตัว Application กับ Database source ใช้ Command object เมื่อต้องการส่งคำสั่งที่จะกระทำกับ Data source เช่น Queries , Update เป็นต้น

8 ActiveX Data Object (ADO)
ใช้ Recordset Object ในการจัดการกับข้อมูลที่ได้มาจากคำสั่งที่ส่งโดย Command object ลักษณะของคำสั่งที่ส่งโดยใช้ Command object จะขึ้นอยู่กับชนิดของ OLE DB Provider ที่เชื่อมต่อ ใช้ parameter Object ก็ต่อเมื่อคำสั่งที่จะทำการส่งโดยใช้ Command object มี parameter อยู่ด้วยโดยจะกำหนดค่าและชนิดของ parameter ผ่านทาง parameter object

9 Connection Object ทำหน้าที่ในการจัดเตรียมการเชื่อต่อระหว่าง ADO กับแหล่งข้อมูล เป็น object ที่ใช้ติดต่อกับ Data source เป็น object ใช้ในการเริ่มต้นการเชื่อมต่อกับ Data source เป็น object ที่สามารถ run queries และทำ Transaction ชั้นแรกสร้าง instance ชื่อ oConnของ connection object โดยมี ProIdคือ ADODB และ method CreateObject ของ Server object รูปแบบคำสั่งคือ Set oConn = Server.CreateObject(“ADODB.Connection)

10 ตัวอย่าง <%@Language = VBScript%> <HMTL> <HEAD>
<TITLE>เพจทดสอบการใช้งานของข้อมูลในเรคอร์ดเซต</TITLE> </HEAD> <BODY> <H3>เพจทดสอบการใช้งานของข้อมูลในเรคอร์ดเซต</H3> <% dim oRSp set oRSp = Server.CreateObject("ADODB.recordset") oRSp.Open "Products", "DSN=Northwind" oRSp.MoveFirst Response.Write "บรรทัดถัดไปเป็นการเขียนข้อมูลจากเรคอร์ดเซตลงในเพจ:<BR>" Response.Write oRSp("ProductName") & "<BR><BR>"

11 Response.Write "บรรทัดถัดไปเป็นการเขียนข้อมูลจากตัวแปรที่เก็บข้อมูล:<BR>"
Dim varPrdName varPrdName = oRSp("ProductName") Response.Write varPrdName & "<BR><BR>" Response.Write "บรรทัดถัดไปเป็นการใช้ If…Then ในการทำงานกับข้อมูล:<BR>" If oRSp("UnitsInStock") < 50 Then Response.Write "ปริมาณสินค้าเหลือน้อยกว่า 50 หน่วย<BR><BR>" Else Response.Write "ปริมาณสินค้าเหลือมากกว่า 50 หน่วย<BR><BR>" End If Response.Write "บรรทัดถัดไปเป็นการใช้ใช้ข้อมูลเป็นอาร์กิวเมนต์ในฟังก์ชั่น:<BR>" Response.Write Ucase(oRSp("ProductName")) & "<BR><BR>" oRSp.Close Set oRSp=Nothing %> </BODY> </HTML>

12 การระบุตำแหน่งการใช้งานเรคอร์ดในRecordset
Move ใช้ในการเลื่อนเคอร์เซอร์ของเรคอร์ดพอยน์เตอร์ไปยังเรคอร์ดก่อนหน้าหรือย้อนกลับตามตัวเลขที่ระบุไว้หลัง Move MoveFirst ใช้ในการเลื่อนเรคอร์ดพอยน์เตอร์ไปยังเรคอร์ดแรกใน recordset ถ้าใช้ในการดึงข้อมูลจะได้เรคอร์ดแรก MoveLast ใช้ในการเลื่อนเรคอร์ดพอยน์เตอร์ไปยังเรคอร์ดท้ายสุดใน recordset ถ้าใช้ในการดึงข้อมูลจะได้เรคอร์ดสุดท้าย MovePrevious ใช้ในการเลื่อนเรคอร์ดพอยน์เตอร์ไปยังเรคอร์ดก่อนหน้าเรคอร์ปัจจุบัน แต่ถ้าเรอร์ดปัจจุบันเป็นเรคอร์แรกจะเกิดข้อผิดพลาด MoveNext ใช้ในการเลื่อนเรคอร์ดพอยน์เตอร์ไปยังเรคอร์ดถัดจากเรคอร์ปัจจุบัน แต่ถ้าเรอร์ดปัจจุบันเป็นเรคอร์สุดท้ายจะเกิดข้อผิดพลาด

13 ตัวอย่าง mvpointer.asp
<HMTL> <HEAD> <TITLE>เพจทดสอบการทำงานกับเรคอร์ดต่างๆ ในเรคอร์ดเซต</TITLE> </HEAD> <BODY> <H3>เพจทดสอบการทำงานกับเรคอร์ดต่างๆ ในเรคอร์ดเซต</H3> <% Dim oRSe Set oRSe = Server.CreateObject("ADODB.recordset") oRSe.Open "Employees", "DSN=Northwind" oRSe.MoveFirst Response.Write "บรรทัดถัดไปเป็นนามสกุลของลูกจ้าง 3 เรคอร์ดแรกจากตาราง Employees :<BR>"

14 ตัวอย่าง mvpointer.asp
Response.Write oRSe("LastName") & ", " oRSe.MoveNext Response.Write oRSe("LastName") oRSe.Close Set oRSe=Nothing %> </BODY> </HTML>

15 ตัวอย่าง การแสดงผลเป็นตารางข้อมูล
<HMTL> <HEAD> <TITLE>การแสดงผลข้อมูลของ 5 เรคอร์ดแรกโดยใช้ตาราง</TITLE> </HEAD> <BODY> <H3>การแสดงผลข้อมูลของ 5 เรคอร์ดแรกโดยใช้ตาราง</H3> <% Dim oRSe, iCnt Set oRSe = Server.CreateObject("ADODB.recordset") oRSe.Open "Employees", "DSN=Northwind" oRSe.MoveFirst

16 ตัวอย่าง การแสดงผลเป็นตารางข้อมูล(ต่อ)
Response.Write "<TABLE BORDER = '1'>" For iCnt = 1 To 5 Response.Write "<TR><TD>" & oRSe("FirstName") & "</TD>" Response.Write "<TD>" & oRSe("LastName") & "</TD></TR>" oRSe.MoveNext Next %> </TABLE> </BODY> </HTML>

17 การแสดงผลข้อมูลทุกเรคอร์ดจากrecordset
การแสดงผลข้อมูลทุกระเบียนจาก recordset จะใช้ฟังก์ชัน EOF (End Of File) ซึ่งใช้สำหรับการตรวจสอบการสิ้นสุดของเรคอร์ดใน recordset โดยค่าของฟังก์ชันนี้จะเป็น “true” เมื่อมีการเลื่อนเรคอร์ดพอยน์เตอร์เลยจากเรคอร์สุดท้ายไป ใช้ฟังก์ชัน EOF ร่วมกับ Do while …loop ดังนี้ Do while NOT oRS.EOF ‘คำสั่งประมวลผล oRS.MoveNext Loop

18 ตัวอย่าง การแสดงผลข้อมูลทุกเรคอร์ด
<HMTL> <HEAD> <TITLE>การแสดงผลข้อทุกเรคอร์โดยใช้ EOF </TITLE> </HEAD> <BODY> <H3>การแสดงผลข้อมูลทุกเรคอร์ดโดยใช้ EOF </H3> <% Dim oRSe Set oRSe = Server.CreateObject("ADODB.recordset") oRSe.Open "Employees", "DSN=Northwind" oRSe.MoveFirst Response.Write "<TABLE BORDER = '1'>"

19 ตัวอย่าง การแสดงผลข้อมูลทุกเรคอร์ด(ต่อ๗
Dim iCnt iCnt = 0 Do while NOT oRSe.EOF iCnt = iCnt + 1 Response.Write "<TR><TD>" & iCnt & "</TD>" Response.Write "<TD>" & oRSe("FirstName") & "</TD>" Response.Write "<TD>" & oRSe("LastName") & "</TD></TR>" oRSe.MoveNext Loop Response.Write "</TABLE><BR>" %> </BODY></HTML>

20 การแสดรายละเอียดของฟิลในrecordset
oRS.Fields(“FieldName”) หรือ ถ้าไม่ทราบชื่อฟิลด์ oRS.Fields(#) โดยที่ # หมายถึงเลขลำดับในการอ้างถึงฟิลด์ซึ่งเริ่มต้นที่ 0,1,2,... ถ้าต้องการนับชื่อฟิลด์ทั้งหมดในrecordset ใช้คำสั่งดังนี้ oRS.Fields.Count

21 ตัวอย่าง <HTML> <HEAD>
<TITLE>การอ่านรายละเอียดของฟิลด์ต่างๆ ในตาราง</TITLE> </HEAD> <BODY> <H3>การอ่านรายละเอียดของฟิลด์ต่างๆ ในตาราง Employees</H3> <% Set oRS=Server.CreateObject("ADODB.Recordset") oRS.Open "Employees", "DSN=Northwind" Response.Write "<TABLE BORDER=1>" For Each ofield in oRS.Fields Response.Write "<TR><TD>" & ofield.name & "</TD>" Response.Write "<TD>" & ofield.type & "</TD></TR>" Next Response.Write "</TABLE>" %>

22 ตัวอย่าง การนำข้อมูลจาก recordset แสดงใน List box
<HTML> <HEAD> <TITLE>การใช้ข้อมูลจากเรคอร์ดเซตกับ List Box</TITLE> </HEAD> <BODY> <H3>การใช้ข้อมูลจากเรคอร์ดเซตกับ List Box</H3> <P>List of categories from categories table</P><BR> <% Dim oRSc Set oRSc=Server.CreateObject("ADODB.Recordset") oRSc.Open "Categories", "DSN=Northwind" oRSc.MoveFirst %>

23 <FORM METHOD="get" ACTION="ResLst.asp">
<SELECT NAME="Categories" SIZE="1"> <% Do While NOT oRSc.EOF Response.Write "<OPTION SELECTED VALUE='" & oRSc("CategoryName") & "'>" Response.Write oRSc("CategoryName") & "</OPTION>" oRSc.MoveNext Loop oRSc.Close Set oRSc=Nothing %> </SELECT> <INPUT TYPE="submit"> </FORM> </BODY> </HTML>


ดาวน์โหลด ppt Seree Chinodom seree@buu.ac.th Connection Object Seree Chinodom seree@buu.ac.th Computer Science, BUU.

งานนำเสนอที่คล้ายกัน


Ads by Google