23
Computer Science, BUU 1 Recordset Object Seree Chinodom [email protected]

Recordset Object

  • Upload
    lilah

  • View
    31

  • Download
    0

Embed Size (px)

DESCRIPTION

Recordset Object. Seree Chinodom [email protected]. Recordset. Recordset หมายถึงกลุ่มของเรคอรฺดซึ่งอาจเป็นบางเรคอร์ดหรือทั้งหมดที่อยู่ในฐานข้อมูล Recordset ใช้รองรับการทำงานทั่วไปที่เกิดจากฐานข้อมูล การอ่านเรคอร์ด การเปลี่ยนแปลง การลบ การค้นหา การเรียงลำดับ. การเตรียมการใช้งาน Recordset. - PowerPoint PPT Presentation

Citation preview

Page 1: Recordset Object

Computer Science, BUU 1

Recordset Object

Seree Chinodom

[email protected]

Page 2: Recordset Object

Computer Science, BUU2

Page 3: Recordset Object

Computer Science, BUU3

Recordset• Recordset หมายถึ�งกลุ่��มของเรคอร�ดซึ่��งอาจ

เป็�นบางเรคอร�ดหร�อทั้��งหมดทั้ �อย!�ในฐานข$อม!ลุ่•Recordset ใช้$รองร�บการทั้&างานทั้��วไป็ทั้ �เก)ด

จากฐานข$อม!ลุ่- การอ�านเรคอร�ด- การเป็ลุ่ �ยนแป็ลุ่ง- การลุ่บ- การค$นหา- การเร ยงลุ่&าด�บ

Page 4: Recordset Object

Computer Science, BUU4

การเตร ยมการใช้$งานRecordset

• 1. สร$าง ODBC Data Source Name

•2. ก&าหนด User Identification แลุ่ะPassword- ระบ� UserID- รห�สผ่�าน

•3. ทั้&าความเข$าใจก�บโครงสร$างของระบบฐานข$อม!ลุ่

Page 5: Recordset Object

Computer Science, BUU5

ช้�ดค&าส��งเบ��องต$นส&าหร�บการทั้&างานก�บRecordset

1. Dim oRS 2. =Set oRS.(“.”) 3. . “oRS open ”ช้��อตาราง , “=ช้��อ dat a sour ce;

UID=ช้��อผ่!$ใช้$; PWD=รห�สผ่�าน” บรรทั้�ด 1 ป็ระกาศต�วแป็รเพื่��อรองร�บ Recordset

บรรทั้�ดทั้ � 2 เป็�นการสร$าง recordset object โดยให$ต�วแป็ร oRS เป็�นต�วอ$างอ)งถึ�ง

บรรทั้�ดทั้ � 3 เป็�นการใช้$เมธอด open ก&าหนดการต)ดต�อฐานข$อม!ลุ่

Page 6: Recordset Object

Computer Science, BUU6

การเข ยนข$อม!ลุ่Recordsetลุ่งในHTML

• ใช้$ค&าส��ง Response.Write เข ยนใน แทั้3ก <% %>ด�งน �

<%Response.write ช้��อobject(“ช้��อฟิ5ลุ่ด�ในตาราง”) %>

• หร�อ<%= ช้��อobject(“ช้��อฟิ5ลุ่ด�ในตาราง”)%>

• หร�อ Response.Write ช้��อobject(“ช้��อ

ฟิ5ลุ่ด�ในตาราง”).value

Page 7: Recordset Object

Computer Science, BUU7

การน&าข$อม!ลุ่จากRecordsetเก3บลุ่งต�วแป็ร

• น&าข$อม!ลุ่เก3บลุ่งต�วแป็รเพื่��อเตร ยมค�าส&าหร�บน&าไป็ด&าเน)นการ

ช้��อต�วแป็ร = ช้��อ object(“ช้��อฟิ5ลุ่ด�ในตาราง”)

เช้�นsContractID = oRS

(“ContractID”) หร�อsContractID = oRS (“FirstName”)

&” “& oRS (“LastName”)

Page 8: Recordset Object

Computer Science, BUU8

การน&าข$อม!ลุ่จากRecordsetเพื่��อเป็ร ยบ

เทั้ ยบ• ใช้$เป็�นเง��อนไขในข$อความส��ง if/then/else

หร�อ Do … Loopif oRS (“ContractName”) =“DBA”

Then ‘ค&าส��งทั้ �ให$ด&าเน)นการเม��อเง��อนไขจร)งEnd If

หร�อDo While oRS.EOF ‘ค&าส��งทั้ �ให$ด&าเน)นการในลุ่!ป็Loop

Page 9: Recordset Object

Computer Science, BUU9

การน&าข$อม!ลุ่จากRecordsetใช้$เป็�นอาร�ก)วเมนต�ของฟิ6งก�ช้�น

• น&าข$อม!ลุ่มาเป็�นค�า อาร�ก)วเมนต�ของฟิ6งก�ช้�น vFirstName =

Left(oRS(“FirstName”), 5) vPassword =

Ucase(oRS(“FirstName”))

Page 10: Recordset Object

Computer Science, BUU10

ต�วอย�าง <%@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>"

Page 11: Recordset Object

Computer Science, BUU11

Response.Write "บรรทั้�ดถึ�ดไป็เป็�นการเข ยนข$อม!ลุ่จากต�วแป็รทั้ �เก3บข$อม!ลุ่:<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 "บรรทั้�ดถึ�ดไป็เป็�นการใช้$ใช้$ข$อม!ลุ่เป็�นอาร�ก)วเมนต�ในฟิ6งก�ช้��น:<BR>" Response.Write Ucase(oRSp("ProductName")) & "<BR><BR>"

oRSp.Close Set oRSp=Nothing

%> </BODY> </HTML>

Page 12: Recordset Object

Computer Science, BUU12

การระบ�ต&าแหน�งการใช้$งานเรคอร�ดในRecordset

• Move ใช้$ในการเลุ่��อนเคอร�เซึ่อร�ของเรคอร�ดพื่อยน�เตอร�ไป็ย�งเรคอร�ดก�อนหน$าหร�อย$อนกลุ่�บตามต�วเลุ่ขทั้ �ระบ�ไว$

หลุ่�ง Move• MoveFirst ใช้$ในการเลุ่��อนเรคอร�ดพื่อยน�เตอร�ไป็ย�งเร

คอร�ดแรกใน recordset ถึ$าใช้$ในการด�งข$อม!ลุ่จะได$เรคอร�ดแรก

• MoveLast ใช้$ในการเลุ่��อนเรคอร�ดพื่อยน�เตอร�ไป็ย�งเร คอร�ดทั้$ายส�ดใน recordset ถึ$าใช้$ในการด�งข$อม!ลุ่จะได$

เรคอร�ดส�ดทั้$าย• MovePrevious ใช้$ในการเลุ่��อนเรคอร�ดพื่อยน�เตอร�ไป็

ย�งเรคอร�ดก�อนหน$าเรคอร�ป็6จจ�บ�น แต�ถึ$าเรอร�ดป็6จจ�บ�นเป็�นเรคอร�แรกจะเก)ดข$อผ่)ดพื่ลุ่าด

• MoveNext ใช้$ในการเลุ่��อนเรคอร�ดพื่อยน�เตอร�ไป็ย�งเร คอร�ดถึ�ดจากเรคอร�ป็6จจ�บ�น แต�ถึ$าเรอร�ดป็6จจ�บ�นเป็�นเร

คอร�ส�ดทั้$ายจะเก)ดข$อผ่)ดพื่ลุ่าด

Page 13: Recordset Object

Computer Science, BUU13

ต�วอย�าง 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>"

Page 14: Recordset Object

Computer Science, BUU14

ต�วอย�าง mvpointer.asp Response.Write oRSe("LastName") & ",

"oRSe.MoveNext

Response.Write oRSe("LastName") & ","

oRSe.MoveNext Response.Write oRSe("LastName")

oRSe.MoveNextoRSe.Close

Set oRSe=Nothing%></BODY></HTML>

Page 15: Recordset Object

Computer Science, BUU15

ต�วอย�าง การแสดงผ่ลุ่เป็�นตารางข$อม!ลุ่

<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

Page 16: Recordset Object

Computer Science, BUU16

ต�วอย�าง การแสดงผ่ลุ่เป็�นตารางข$อม!ลุ่(ต�อ)

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.MoveNextNext%></TABLE></BODY></HTML>

Page 17: Recordset Object

Computer Science, BUU17

การแสดงผ่ลุ่ข$อม!ลุ่ทั้�กเรคอร�ดจากrecordset

• การแสดงผ่ลุ่ข$อม!ลุ่ทั้�กระเบ ยนจาก recordset จะ ใช้$ฟิ6งก�ช้�น EOF (End Of File) ซึ่��งใช้$ส&าหร�บการ

ตรวจสอบการส)�นส�ดของเรคอร�ดใน recordset โดยค�าของฟิ6งก�ช้�นน �จะเป็�น “true” เม��อม การ

เลุ่��อนเรคอร�ดพื่อยน�เตอร�เลุ่ยจากเรคอร�ส�ดทั้$ายไป็• ใช้$ฟิ6งก�ช้�น EOF ร�วมก�บ Do while …loop

ด�งน �Do while NOT oRS.EOF ‘ค&าส��งป็ระมวลุ่ผ่ลุ่ … oRS.MoveNextLoop

Page 18: Recordset Object

Computer Science, BUU18

ต�วอย�าง การแสดงผ่ลุ่ข$อม!ลุ่ทั้�กเรคอร�ด

<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'>"

Page 19: Recordset Object

Computer Science, BUU19

ต�วอย�าง การแสดงผ่ลุ่ข$อม!ลุ่ทั้�กเรคอร�ด(ต�อ)

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.MoveNextLoop

Response.Write "</TABLE><BR>"%></BODY></HTML>

Page 20: Recordset Object

Computer Science, BUU20

การแสดรายลุ่ะเอ ยดของฟิ5ลุ่ในrecordset

• สามารถึแสดงรายลุ่ะเอ ยดแลุ่ะค�ณสมบ�ต)ของ ฟิ5ลุ่ด�ต�างๆใน recordset ได$ โดยใช้$ร!ป็แบบ

ค&าส��งด�งน �oRS.Fields(“FieldName”)

หร�อ ถึ$าไม�ทั้ราบช้��อฟิ5ลุ่ด�oRS.Fields(#)

โดยทั้ � # หมายถึ�งเลุ่ขลุ่&าด�บในการอ$างถึ�งฟิ5ลุ่ด�ซึ่��ง เร)�มต$นทั้ � 0 ,1,2,...

• ถึ$าต$องการน�บช้��อฟิ5ลุ่ด�ทั้��งหมดในrecordset ใช้$ค&าส��งด�งน �

oRS.Fields.Count

Page 21: Recordset Object

Computer Science, BUU21

ต�วอย�าง<HTML><HEAD><TITLE> การอ�านรายลุ่ะเอ ยดของฟิ5ลุ่ด�ต�างๆ ในตาราง</TITLE></HEAD><BODY><H3> การอ�านรายลุ่ะเอ ยดของฟิ5ลุ่ด�ต�างๆ ในตาราง

Employees</H3><% SSS

oRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS oRS.Open "Employees", "DSN=Northwind" 1Response.Write "<TABLE BORDER= >" SSS SSSS SSSSSS SS SSSSSSSSSS SSSSSSSSSSSSSS SSSSSSSSSS S SSSSSSSSSSS S "</ TD>"

Response.Write "<TD>" & ofield.type &"</TD></TR>"

SSSS Response.Write "</TABLE>"%>

Page 22: Recordset Object

Computer Science, BUU22

ต�วอย�าง การน&าข$อม!ลุ่จากrecordset แสดงใน List box

<HTML><HEAD><TITLE> การใช้$ข$อม!ลุ่จากเรคอร�ดเซึ่ตก�บ List

Box</TITLE></HEAD><BODY><H3> การใช้$ข$อม!ลุ่จากเรคอร�ดเซึ่ตก�บ List Box</H3>

<P>List of categories from categoriestable</P><BR>

<% Dim oRSc Set

oRSc=Server.CreateObject("ADODB.Recordset")

oRSc.Open "Categories", "DSN=Northwind" oRSc.MoveFirst%>

Page 23: Recordset Object

Computer Science, BUU23

<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>