การเชื่อมต่อฐานข้อมูลด้วย ado.net ( vb.net )
DESCRIPTION
การเชื่อมต่อฐานข้อมูลด้วย ADO.NET ( VB.NET ). เอกสารสำหรับ การเรียนใน สัปดาห์ที่ 7. อ. นัฐพงศ์ ส่งเนียม http://www.siam2dev.com [email protected] [email protected]. Agenda. โครงสร้างการทำงาน คลาสใน ADO.NET เปรียบเทียบ Dataset กับ RecordSet ใน ADO - PowerPoint PPT PresentationTRANSCRIPT
11
การเชื่��อมต่�อฐานข้�อม�ลด้�วย การเชื่��อมต่�อฐานข้�อม�ลด้�วย ADO.NETADO.NET( VB.NET )( VB.NET )
ออ. . นั�ฐพงศ์� ส่งเนั�ยม นั�ฐพงศ์� ส่งเนั�ยมhttp://www.siam2dev.comhttp://[email protected]@[email protected]@yahoo.com
เอกสารส�าหร�บ การเร�ยนเอกสารส�าหร�บ การเร�ยนใน ใน
ส�ปด้าห�ที่�� ส�ปด้าห�ที่�� 77
22
AgendaAgenda
โครงส่ร�างการทำ�างานัโครงส่ร�างการทำ�างานั คลาส่ในั คลาส่ในั ADO.NETADO.NET เปร�ยบเทำ�ยบ เปร�ยบเทำ�ยบ Dataset Dataset ก�บ ก�บ RecordSet RecordSet ในั ในั ADOADO
Namespace Namespace ทำ��ใช้�งานัก�บฐานัข้�อม�ลทำ��ใช้�งานัก�บฐานัข้�อม�ล
33
โครงส่ร�างการทำ�างานัในั โครงส่ร�างการทำ�างานัในั ADO.NETADO.NET
44
คลาส่ในั คลาส่ในั ADO.NETADO.NET
.NET Data Provider
Data Adapter
Select Command
Insert Command
Update Command
Delete Command
ConnectionTransaction
CommandParameter
DataReader
Data BaseXMLXML
DataSet
DataTableCollection
DataTableDataRowCollection
DataColumncollection
ConstraintCollection
DataRelationCollection
55
คลาส่ในั คลาส่ในั ADO.NETADO.NET
ส่ามารถแบงออกเป!นั ส่ามารถแบงออกเป!นั 2 2 กล"ม ดั�งนั�$ กล"ม ดั�งนั�$ กล"มทำ�� กล"มทำ�� 1 1 เป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บฐานัข้�อม�ลเป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บฐานัข้�อม�ล
แบบเป&ดัการเช้'�อมต่อ แบบเป&ดัการเช้'�อมต่อ (connected database)(connected database) กล"มทำ�� กล"มทำ�� 2 2 เป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บฐานัข้�อม�ลเป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บฐานัข้�อม�ล
แบบกาต่�ดัการเช้'�อมต่อ แบบกาต่�ดัการเช้'�อมต่อ (disconnected database)(disconnected database)
66
กล"มทำ�� กล"มทำ�� 1 1 เป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บเป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บ ฐานัข้�อม�ลแบบเป&ดัการเช้'�อมต่อ ฐานัข้�อม�ลแบบเป&ดัการเช้'�อมต่อ
(connected database)(connected database) ส่ามารถแยกออกเป!นั ส่ามารถแยกออกเป!นั 2 2 กล"มยอยต่ามประเภทำกล"มยอยต่ามประเภทำ
ข้อง ข้อง Data Provider Data Provider ไดั�ดั�งนั�$ไดั�ดั�งนั�$SQL Server .NET Data ProviderSQL Server .NET Data ProviderOLEDB .NET Data ProviderOLEDB .NET Data Provider
77
กล"มทำ�� กล"มทำ�� 2 2 เป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บเป!นักล"มคลาส่ทำ��ทำ�างานัรวมก�บ ฐานัข้�อม�ลแบบกาต่�ดัการเช้'�อมต่อ ฐานัข้�อม�ลแบบกาต่�ดัการเช้'�อมต่อ
(disconnected database)(disconnected database) การทำ�างานัในั การทำ�างานัในั Layer Layer แรก ซึ่-�งเป!นัส่วนัทำ��ทำ�างานัแบบเช้'�อต่อ แรก ซึ่-�งเป!นัส่วนัทำ��ทำ�างานัแบบเช้'�อต่อฐานัจ้�อมลต่ลอดัเวลานั�$นัเหมาะก�บการทำ�างานัทำ��ม�ปร0มาณฐานัจ้�อมลต่ลอดัเวลานั�$นัเหมาะก�บการทำ�างานัทำ��ม�ปร0มาณข้�อม�ลไมมากนั�กและการประมวลผลไมซึ่�บซึ่�อนัจ้นัทำ�าให�ส่0$นัข้�อม�ลไมมากนั�กและการประมวลผลไมซึ่�บซึ่�อนัจ้นัทำ�าให�ส่0$นั
เปล'$องหนัวยความจ้�าและทำร�พยากรอ'�นั ๆ ข้องคอมพ0วเต่อร� เปล'$องหนัวยความจ้�าและทำร�พยากรอ'�นั ๆ ข้องคอมพ0วเต่อร� มากเก0นัไป โดัยจ้ะประกอบไปดั�วยคลาส่ต่าง ๆ ดั�งต่อไปนั�$ มากเก0นัไป โดัยจ้ะประกอบไปดั�วยคลาส่ต่าง ๆ ดั�งต่อไปนั�$
คลาส่ คลาส่ ConnectionConnection คลาส่ คลาส่ CommandCommand คลาส่ คลาส่ Data ReaderData Reader คลาส่ คลาส่ DataAdapterDataAdapter คลาส่ คลาส่ DataSetDataSet
88
ต่0ดัต่อฐานัข้�อม�ลดั�วย ต่0ดัต่อฐานัข้�อม�ลดั�วย ADO.NETADO.NET
ในัการต่0ดัต่อและการจ้�ดัการก�บฐานัข้�อม�ลใดัๆ โดัยทำ��วไป ในัการต่0ดัต่อและการจ้�ดัการก�บฐานัข้�อม�ลใดัๆ โดัยทำ��วไปแล�วจ้ะม�ข้�$นัต่อนัทำ��ส่�าค�ญดั�งต่อไปนั�$แล�วจ้ะม�ข้�$นัต่อนัทำ��ส่�าค�ญดั�งต่อไปนั�$1.1. ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ConnectionConnection
2.2. ส่ร�าง ส่ร�าง Object Object จ้ากคลาส่ จ้ากคลาส่ ConnectionConnection
3.3. เป&ดัการเช้'�อมต่อดั�วยเมธอดั เป&ดัการเช้'�อมต่อดั�วยเมธอดั Open()Open()
4.4. การแส่ดังข้�อม�ลดั�วยคลาส่ การแส่ดังข้�อม�ลดั�วยคลาส่ DataReaderDataReader
5.5. ประมวลผลค�าส่��ง ประมวลผลค�าส่��ง SQL SQL ดั�วยคลาส่ ดั�วยคลาส่ CommandCommand
6.6. ทำ�างานัแบบป&ดัการเช้'�อมต่อดั�วย ทำ�างานัแบบป&ดัการเช้'�อมต่อดั�วย DataSet DataSet และ และ DataAdapterDataAdapter
7.7. ป&ดัการเช้'�อมต่อดั�วยเมธอดั ป&ดัการเช้'�อมต่อดั�วยเมธอดั Close()Close()
99
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
กอนัทำ��เราจ้ะเข้�าถ-งและจ้�ดัการฐานัข้�อม�ล เราจ้ะต่�องส่ร�างการ กอนัทำ��เราจ้ะเข้�าถ-งและจ้�ดัการฐานัข้�อม�ล เราจ้ะต่�องส่ร�างการ ต่0ดัต่อก�บฐานัข้�อม�ลกอนั ส่�าหร�บภาษา ต่0ดัต่อก�บฐานัข้�อม�ลกอนั ส่�าหร�บภาษา VB.NET VB.NET จ้ะใช้�ค�าส่��ง จ้ะใช้�ค�าส่��ง
Imports Imports เพ'�ออ�างอ0งถ-งเนัมส่เปซึ่ไว�บรรทำ�ดัส่"ดัข้องเพ'�ออ�างอ0งถ-งเนัมส่เปซึ่ไว�บรรทำ�ดัส่"ดัข้องโปรแกรมเพ'�อเร�ยกใช้�คลาส่ทำ��เหมาะส่มก�บประเภทำข้องฐานัโปรแกรมเพ'�อเร�ยกใช้�คลาส่ทำ��เหมาะส่มก�บประเภทำข้องฐานัข้�อม�ลข้�อม�ล
ต่�วอย�างการอ�างอ!งถึ#งเนมสเปซเพื่��อเร�ยกใชื่�คลาสในกล'�ม OLE DB .NET Data Provider
1.
1010
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ส่ร�าง ส่ร�าง Object Object จ้ากคลาส่ จ้ากคลาส่ ConnectionConnection
2.ร�ปแบบที่�� 1Dim ObjConn as OledbconnectionObjConn = new Oledbconnection(strconn)
ร�ปแบบที่�� 2Dim ObjConn as New Oledbconnection(strconn)
โด้ย ObjConn หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส connectionstrconn หมายถึ#ง connection string หร�อ ประโยคข้�อความที่��ประกอบไปด้�วย อาร�ก!วเมนต่�ต่�าง ๆที่��ใชื่�ต่!ด้ต่�อฐานข้�อม�ล
1111
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ต่�วอยางการส่ร�าง ต่�วอยางการส่ร�าง Object Object จ้ากคลาส่ จ้ากคลาส่ConnectionConnection2.
โด้ย MyConn หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส connectionstrconn หมายถึ#ง connection string หร�อ ประโยคข้�อความที่��ประกอบไปด้�วย อาร�ก!วเมนต่�ต่�าง ๆที่��ใชื่�ต่!ด้ต่�อฐานข้�อม�ล
ต่.ย.Dim MyConn as OledbconnectionDim strconn as string=“Provider=Microsoft.jet.OLEDB.4.0; Data source=c:\MyDB.MDB”
MyConn = new Oledbconnection(strconn)
1212
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
เป&ดัการเช้'�อมต่อก�บฐานัข้�อม�ลดั�วยเมธอดั เป&ดัการเช้'�อมต่อก�บฐานัข้�อม�ลดั�วยเมธอดัOpen()Open()3.
ต่.ย.
Dim MyConn as OledbconnectionDim strconn as string=“Provider=Microsoft.jet.OLEDB.4.0; Data source=c:\MyDB.MDB” MyConn = new Oledbconnection(strconn)MyConn.Open()
1313
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ป&ดัการเช้'�อมต่อก�บฐานัข้�อม�ลดั�วยเมธอดั ป&ดัการเช้'�อมต่อก�บฐานัข้�อม�ลดั�วยเมธอดัClose()Close()4.
ต่.ย.Dim MyConn as OledbconnectionDim strconn as string=“Provider=Microsoft.jet.OLEDB.4.0; Data source=c:\MyDB.MDB” MyConn = new Oledbconnection(strconn)MyConn.Open()
‘ ที่�างาน ก�บ ฐานข้�อม�ล
‘ เม��อต่�องการยกเล!กการที่�างาน ก�บ ฐานข้�อม�ล
MyConn.Close()
1414
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
แส่ดังข้�อม�ลดั�วยคลาส่ แส่ดังข้�อม�ลดั�วยคลาส่ DataReaderDataReader
5.
สร�างออบเจ็+คจ็�จ็ากคลาส DataReaderDim ObjdtReader as OledbDataReader
ประมวลผลด้�วยค�าส��ง ExecuteReader()ObjdtReader = ObjCmd.ExecuteReader()
โด้ย ObjdtReader หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส DataReaderObjCmd หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส Command
เข้�าถึ#งข้�อม�ลแต่ล�ะเรคคอร�ด้ด้�วเมธอด้ Read()ObjdtReader.Read()
1515
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
แส่ดังข้�อม�ลดั�วยคลาส่ แส่ดังข้�อม�ลดั�วยคลาส่ DataReaderDataReader
5.
โด้ย ObjdtReader หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส DataReaderfield หมายถึ#ง ชื่��อฟิ2ลด้�หร�อส�าด้�บที่��ข้องฟิ2ลด้�ในเรคคอร�ด้น�3น ( 0.. n-1)
เข้�าถึ#งข้�อม�ลแต่ล�ะฟิ2ลด้�ด้�วย พื่ร+อพื่เพื่อร�ต่�3 Item()
แบบที่�� 1 ObjdtReader.Item(field)แบบที่�� 2 ObjdtReader(field)
1616
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ต่�วอยางการแส่ดังข้�อม�ลดั�วยคลาส่ ต่�วอยางการแส่ดังข้�อม�ลดั�วยคลาส่ DataReaderDataReader
5.1Dim MyConn as OledbconnectionDim strconn as string=“Provider=Microsoft.jet.OLEDB.4.0; Data source=c:\MyDB.MDB” MyConn = new Oledbconnection(strconn)MyConn.Open()
‘ ที่�างาน ก�บ ฐานข้�อม�ลโด้ยใชื่� DataReaderDim MyReader as OleDbDataReaderDim MyCmd as OleDbCommand = new OleDbCommand(“Select * From Customer”,MyConn)MyReader = MyCmd.ExecuteReader()MyReader.Read()Lb1.Text = MyReader.Item(“CusID”)Lb2.Text = MyReader.Item(“CusName”)Lb3.Text = MyReader.Item(“CusAddress”)‘ เม��อต่�องการยกเล!กการที่�างาน ก�บ ฐานข้�อม�ลMyReader.Close()MyConn.Close()
1717
อานัข้�อม�ลจ้ากฐานัข้�อม�ลดั�วย อานัข้�อม�ลจ้ากฐานัข้�อม�ลดั�วยDataReaderDataReader
Lb1.Text = MyReader.Item(“CusID”)Lb2.Text = MyReader.Item(“CusName”)Lb3.Text = MyReader.Item(“CusAddress”)
1818
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ต่�วอยางการแส่ดังข้�อม�ลดั�วยคลาส่ ต่�วอยางการแส่ดังข้�อม�ลดั�วยคลาส่ DataReaderDataReader
5.2Dim MyConn as OledbconnectionDim strconn as string=“Provider=Microsoft.jet.OLEDB.4.0; Data source=c:\MyDB.MDB” MyConn = new Oledbconnection(strconn)MyConn.Open()
‘ ที่�างาน ก�บ ฐานข้�อม�ลโด้ยใชื่� DataReaderDim MyReader as OleDbDataReaderDim MyCmd as OleDbCommand = new OleDbCommand(“Select * From Customer”,MyConn)MyReader = MyCmd.ExecuteReader()While MyReader.Read()
Lb1.Text &= MyReader.Item(“CusID”) & vbcrlfLb2.Text &= MyReader.Item(“CusName”) & vbcrlfLb3.Text &= MyReader.Item(“CusAddress”) & vbcrlf
End While‘ เม��อต่�องการยกเล!กการที่�างาน ก�บ ฐานข้�อม�ลMyReader.Close()MyConn.Close()
1919
ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ ต่0ดัต่อฐานัข้�อม�ลดั�วยคลาส่ConnectionConnection
ประมวลผลค�าส่��งดั�วยคลาส่ ประมวลผลค�าส่��งดั�วยคลาส่ CommandCommand6.
โด้ย ObjCmd หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส CommandsqlCmd หมายถึ#ง ประโยคค�าส��ง SQLMyConn หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส connection
แบบที่�� 1 Dim objCmd as OleDbCommandobjCmd = New OleDbCommand(sqlCmd,MyConn)
แบบที่�� 2 Dim objCmd as OleDbCommand = New OleDbCommand(sqlCmd,MyConn)
2020
ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาส ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาสConnectionConnection
ประมวลผลค�าส่��งดั�วยเมธอดั ประมวลผลค�าส่��งดั�วยเมธอดั ExecuteNonQuery()ExecuteNonQuery() เป!นัเมธอดัทำ��ใช้�ประมวลผลค�าส่��ง เช้นั เพ0�มเรคคอร�ดัใหม ลบ
เรคคอร�ดั แก�ไข้ข้�อม�ล โดัยไมส่งผลล�พธ�ใดั ๆ กล�บมา (Non-Query)
6.
โด้ยที่�� ObjCmd หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส Command
objCmd.ExecuteNonQuery()
2121
ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาส ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาสConnectionConnection
ประมวลผลค�าส่��งดั�วยเมธอดั ประมวลผลค�าส่��งดั�วยเมธอดัExecuteNonQuery()ExecuteNonQuery()
กรณ�ส่งผลล�พธ�กล�บค'นัมาเป!นัจ้�านัวนัเรคอร�ดัทำ��กรณ�ส่งผลล�พธ�กล�บค'นัมาเป!นัจ้�านัวนัเรคอร�ดัทำ��ถ�กประมวลผลถ�กประมวลผล
6.1
โด้ยที่�� ObjCmd หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส CommandvarRecAffected หมายถึ#ง ต่�วแปรที่��จ็ะใชื่�เก+บจ็�านวนเรคอร�ด้ที่��ถึ�กประมวลผล
varRecAffected = objCmd.ExecuteNonQuery()
2222
ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาส ต่!ด้ต่�อฐานข้�อม�ลด้�วยคลาสConnectionConnection
ประมวลผลค�าส่��งดั�วยเมธอดั ประมวลผลค�าส่��งดั�วยเมธอดั ExecuteScalar() ExecuteScalar() เป!นัเมธอดัทำ��ส่งผลล�พธ�ทำ��ไดั�จ้ากการประมวผลค�าเป!นัเมธอดัทำ��ส่งผลล�พธ�ทำ��ไดั�จ้ากการประมวผลค�า
ส่��ง ส่��ง SQL SQL กล�บค'นัมาเพ�ยงคาเดั�ยวเช้นั ผลล�พธ�ทำ�� กล�บค'นัมาเพ�ยงคาเดั�ยวเช้นั ผลล�พธ�ทำ�� ไดั�จ้ากการประมวลผลฟั8งก�ช้� �นัส่ร"ป ไดั�จ้ากการประมวลผลฟั8งก�ช้� �นัส่ร"ป (Aggregate (Aggregate
Function)Function)
6.2
โด้ยที่�� varResult หมายถึ#ง ต่�วแปรที่��ใชื่�เก+บผลล�พื่ธ�ที่��ได้�จ็ากการประมวลผลกล'�มเรคอร�ด้เชื่�น ค�าที่��ได้�จ็ากฟิ4งก�ชื่��น sum,count,average เป5นต่�นObjCmd หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส Command
varResult = objCmd.ExecuteScalar()
2323
ทำ�างานัแบบ ทำ�างานัแบบ disconnected databasedisconnected database ดั�วย ดั�วย DataSet DataSet และ และ DataAdapter DataAdapter
ส่ร�างออบเจ้9กต่�จ้ากคลาส่ ส่ร�างออบเจ้9กต่�จ้ากคลาส่ DataAdapterDataAdapter
7.
โด้ยที่�� objdtAdapter หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส DataAdapterobjConn หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส ConnectionsqlCmd หมายถึ#ง ประโยคค�าส��งที่��น�ามาสร�างต่ารางใน dataset
Dim objdtAdapter As OleDbDataAdapterobjdtAdapter = New OleDbDataAdapter(sqlCmd,objConn)
2424
ทำ�างานัแบบ ทำ�างานัแบบ disconnected databasedisconnected database ดั�วย ดั�วย DataSet DataSet และ และ DataAdapter DataAdapter
ส่ร�างออบเจ้9กต่�จ้ากคลาส่ ส่ร�างออบเจ้9กต่�จ้ากคลาส่ DataSetDataSet
7.1
โด้ยที่�� objdtSet หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส DataSet
Dim objdtSet As DataSetobjdtSet = new DataSet
2525
ทำ�างานัแบบ ทำ�างานัแบบ disconnected databasedisconnected database ดั�วย ดั�วย DataSet DataSet และ และ DataAdapter DataAdapter
นั�าข้�อม�ลมาไว�ในั นั�าข้�อม�ลมาไว�ในั DataSet DataSet ดั�วยเมธอดั ดั�วยเมธอดั Fill()Fill()
7.2
โด้ยที่�� objdtSet หมายถึ#ง ออบเจ็+กต่�ที่��สร�างจ็ากคลาส DataSet
objdtAdapter.Fill(objdtSet,dataname)
2626
ProductsProducts
idid namename unitunit priceprice
11 penpen 55 1010
22 pencilpencil 33 55
ConnectionConnection
Disconnected ModelDisconnected Model
VB4 user id=sa;password=123
DataSet
P1P1
idid namename unitunit priceprice
11 penpen 22 33
22 pencilpencil 33 55
DataAdapter
FillFillSelectCommand
UpdateCommandUpdateUpdate
P1P1
idid namename unitunit priceprice
11 penpen 55 1010
22 pencilpencil 33 55
CommandBuilderCommandBuilder
ProductsProducts
idid namename unitunit priceprice
11 penpen 22 33
22 pencilpencil 33 55
2727
DataSet and DataAdapter DataSet and DataAdapter Objects Objects
Data SourceDataAdapterDataTable
DataTable
DataSet
DataAdapter
FillFill
UpdateUpdate
UpdateUpdate
FillFill
ConnectionConnectionUpdateCommandUpdateCommand
SelectCommandSelectCommand
SelectCommandSelectCommand
UpdateCommandUpdateCommand
CommandBuilderCommandBuilder
CommandBuilderCommandBuilder
2828
Retriving data from DataSetRetriving data from DataSet
TextBox1.Text = DS.Tables("Customer").Rows(2)("Name")
Table Name Column Name
Row number
DataSet
ID Name Tel
100 Peter 123123121
101 John 012040230
102 David 402123242
103 Joseph 973534245
Customer
ID Name
P1 Coke
P2 Pepsi
P3 Fanta
P4 7Up
Product
2929
DataRow
DataTable
DataColumn
DataRow
DataRelation
DataSet1.Tables("TableName").Rows({number})
Delete an existing row
DataSet1.Tables("TableName").Rows({number}).Delete
3030
กรณ�ศ์-กษาระบบจ้องห�องพ�กโรงแรม กรณ�ศ์-กษาระบบจ้องห�องพ�กโรงแรมAsiaAirportAsiaAirport
ข้�อม�ลห�องพ�ก ข้�อม�ลห�องพ�ก (TblRoom)(TblRoom) ประเภทำห�องพ�ก ประเภทำห�องพ�ก
(TblRoomType)(TblRoomType) ข้�อม�ลล�กค�า ข้�อม�ลล�กค�า (TblCustomer)(TblCustomer) ข้�อม�ลพนั�กงานัโรงแรม ข้�อม�ลพนั�กงานัโรงแรม
(TblEmployee)(TblEmployee) ข้�อม�ลการจ้องห�องพ�ก ข้�อม�ลการจ้องห�องพ�ก
(TblReservation)(TblReservation) ข้�อม�ลส่มาช้0ก ข้�อม�ลส่มาช้0ก (TblMember)(TblMember)
3131
E-R DiagramE-R Diagram
ล�กค�า ห�องพ�ก
พนั�กงานั
ประเภทำ
เป!นั
จ้อง
3232
ออกแบบต่าราง ออกแบบต่าราง TblCustomerTblCustomer
ข้�อม�ลล�กค�าประกอบไปด้�วยรายละเอ�ยด้ด้�งต่�อไปน�3
• รห�สล�กค�า• ค�าน�าหน�า• ชื่��อ - นามสก'ลล�กค�า• ที่��อย��• เบอร�โที่ร• เพื่ศ• อาชื่�พื่
3333
ต่ต่..ยย. . การจ้องห�องพ�กผานัทำางเว9บไซึ่ต่�การจ้องห�องพ�กผานัทำางเว9บไซึ่ต่�
3434
ป7อนข้�อม�ลลงในต่าราง ป7อนข้�อม�ลลงในต่าราง TblCustomerTblCustomer
ป7อนข้�อม�ลต่�วอย�างล�กค�าโด้ยม�รายละเอ�ยด้ด้�งต่�อไปน�3
3535
ออกแบบต่าราง ออกแบบต่าราง TblMemberTblMember
ข้�อม�ลสมาชื่!กประกอบไปด้�วยรายละเอ�ยด้ด้�งต่�อไปน�3
• รห�สสมาชื่!ก• ชื่��อผ��ใชื่�ระบบ• รห�สผ�าน• ชื่��อเต่+ม• ประเภที่ผ��ใชื่�งาน• อ�เมล�
3636
ป7อนข้�อม�ลลงในต่าราง ป7อนข้�อม�ลลงในต่าราง TblMemberTblMember
ป7อนข้�อม�ลต่�วอย�างลงในต่ารางข้�อม�ลสมาชื่!ก (TblMember)โด้ยม�รายละเอ�ยด้ด้�งต่�อไปน�3
3737
ออกแบบหน�าต่�าง ออกแบบหน�าต่�าง LoginLogin
TxtUserNameTxtPassword
LbUserNameLbPassword