ADO.NET เอกสารประกอบการบรรยายรายวิชา 204200 Browser-Based Application Development
วัตถุประสงค์ นักศึกษาสามารถอธิบายเกี่ยวกับ ADO.NET อย่างคร่าวๆ และการนำข้อมูลจากฐานข้อมูลมาใช้ใน ASP.NET นักศึกษาสามารถพัฒนาโปรแกรมประยุกต์บนบราวเซอร์อย่างง่ายๆ ซึ่งเชื่อมต่อกับฐานข้อมูลได้
หัวข้อบรรยาย ASP.NET & ADO.NET DataBinding ADO.NET SQLHelper and OleDbHelper ASP.NET & ADO.NET DataBinding
ADO.NET ADO <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %>
ADO.NET ADO <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %>
ADO.NET ADO <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00
ADO.NET ADO 10001 คู่กรรม <BR> <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 10001 คู่กรรม <BR>
ADO.NET ADO 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR>
ADO.NET ADO 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> 10003 ดาวพระศุกร์ <BR>
ADO.NET ADO 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> 10003 ดาวพระศุกร์ <BR> 10004 พระเสาร์แทรก <BR>
ADO.NET ADO 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %> book_id book_name author publisher price 10001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 10002 บ้านทรายทอง สมชาย 10003 ดาวพระศุกร์ พลูโต 220.00 10004 พระเสาร์แทรก สมหญิง 300.00 10008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> 10003 ดาวพระศุกร์ <BR> 10004 พระเสาร์แทรก <BR> 10005 เขาว่าผมฆ่าพี่ห้าง <BR>
ADO.NET ADO <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML>
ADO.NET ADO <% Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing %>
ADO.NET ADO
ADO.NET ADO <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML>
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database Set con=Server.CreateObject("ADODB.Connection") con.Open "Driver={SQL Server}; SERVER=MYCOM; DATABASE=library;UID=user01;PWD=password" strSQL = "SELECT * FROM book" Set rsBooks=Server.CreateObject("ADODB.Recordset") Set rsBooks=con.Execute(strSQL) Do While Not rsBooks.Eof Response.Write rsBooks.Fields("book_id") & " " Response.Write rsBooks.Fields("title") & "<BR>" rsBooks.MoveNext Loop con.Close Set con=Nothing ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> 10003 ดาวพระศุกร์ <BR> 10004 พระเสาร์แทรก <BR> 10005 เขาว่าผมฆ่าพี่ห้าง <BR> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Web Browser Web Server ASP Engine Database <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> 10001 คู่กรรม <BR> 10002 บ้านทรายทอง <BR> 10003 ดาวพระศุกร์ <BR> 10004 พระเสาร์แทรก <BR> 10005 เขาว่าผมฆ่าพี่ห้าง <BR> </BODY> </HTML> ASP Engine Database
ADO.NET ADO Example Web Browser Web Server ASP Engine Database Hello Bold Hello Italic 10001 คู่กรรม 10002 บ้านทรายทอง 10003 ดาวพระศุกร์ 10004 พระเสาร์แทรก 10005 เขาว่าผมฆ่าพี่ห้าง ASP Engine Database
ADO.NET ADO <HTML> <BODY> <H1>Example</H1> <B>Hello Bold</B><BR> <B>Hello Italic</B><BR> <% ASP Block แสดง book_id และ title %> </BODY> </HTML>
ADO.NET ADO & ADO.NET RecordSet DataSet
ADO.NET Connection Command DataReader DataSet DataAdapter
SelectCommand UpdateCommand InsertCommand DeleteCommand ADO.NET ADO & ADO.NET DataSet SqlDataAdaper SelectCommand UpdateCommand InsertCommand DeleteCommand SQL
ADO.NET
ADO.NET Connection Command DataReader DataSet DataAdapter
ADO.NET ADO & ADO.NET RecordSet DataSet
หัวข้อบรรยาย ASP.NET & ADO.NET DataBinding ADO.NET SQLHelper and OleDbHelper ASP.NET & ADO.NET DataBinding
SQLHelper and OleDbHelper Determine Database dbEmployee Connect to the Database dbEmployee Execute Command SELECT * FROM employee Use Data empid empname address B4700001 สมชาย 23/12 หมู่ 7 ต.บ้านนอก อ.บ้านนา… B4700002 เก่งไม่จริง 222 ต.ท่าศาลา อ.เมือง จ.นครศรี… B4700003 111 ถนนมหาวิทยาลัย 1 ต.สุรนารี… B4700004 ฉลาด 99 วิภาวดีรังสิต แขวงดอนมือง… Close Connection
SQLHelper and OleDbHelper Determine Database dbEmployee SELECT * FROM employee Execute Command empid empname address B4700001 สมชาย 23/12 หมู่ 7 ต.บ้านนอก อ.บ้านนา… B4700002 เก่งไม่จริง 222 ต.ท่าศาลา อ.เมือง จ.นครศรี… B4700003 111 ถนนมหาวิทยาลัย 1 ต.สุรนารี… B4700004 ฉลาด 99 วิภาวดีรังสิต แขวงดอนมือง… Close Connection
SQLHelper and OleDbHelper SQLHelper.cs OleDbHelper.cs
SQLHelper and OleDbHelper SQLHelper.cs using System; using System.Collections; using System.ComponentModel; using System.Data; … using System.Web.UI.HtmlControls; using Microsoft.ApplicationBlocks.Data;
SQLHelper and OleDbHelper OleDbHelper.cs using System; using System.Collections; using System.ComponentModel; using System.Data; … using System.Web.UI.HtmlControls; using Microsoft.ApplicationBlocks.Data;
หัวข้อบรรยาย ASP.NET & ADO.NET DataBinding ADO.NET SQLHelper and OleDbHelper ASP.NET & ADO.NET DataBinding
ASP.NET & ADO.NET
ASP.NET & ADO.NET string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = "SELECT * FROM car"; DataSet ds = new DataSet(); ds = OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
ASP.NET & ADO.NET string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = "SELECT * FROM car WHERE car_id = ' " + TextCarID.Text + " ' "; DataSet ds = new DataSet(); ds = OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
ASP.NET & ADO.NET string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = "INSERT INTO car (make, model) VALUES( ' " + TextMake.Text + " ' " + TextModel.Text + " ') "; OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
ASP.NET & ADO.NET string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = "DELETE FROM car WHERE car_id = ' " + TextCarID.Text + " ') "; OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
ASP.NET & ADO.NET string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = “UPDATE car SET price = ' " + TextPrice.Text + " ' WHERE car_id = ' " + TextCarID.Text + " ') "; OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
หัวข้อบรรยาย ASP.NET & ADO.NET DataBinding ADO.NET SQLHelper and OleDbHelper ASP.NET & ADO.NET DataBinding
DataBinding WebForm Controls TextBox Label DropDownList DataGrid DataList RadioButtonList CheckBoxList etc.
DataBinding
DataBinding string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\e-Commerce\\MyStore.mdb"; string SqlStatement = "SELECT * FROM car"; DataSet ds = new DataSet(); ds = OleDbHelper.ExecuteDataset(ConnectionString, CommandType.Text, SqlStatement);
TextBox1.Text = ds.Tables["Car"].Rows[0]["make"].ToString(); DataBinding Label TextBox1.Text = ds.Tables["Car"].Rows[0]["make"].ToString();
Label1.Text = ds.Tables["Car"].Rows[0]["make"].ToString(); DataBinding Label Label1.Text = ds.Tables["Car"].Rows[0]["make"].ToString();
DataBinding DropDownList DropDownList1.DataSource = ds; DropDownList1.DataTextField = "make"; DropDownList1.DataBind();
DataBinding DataGrid DataGrid1.DataSource = ds; DataGrid1.DataBind();
DataBinding RadioButtonList RadioButtonList1.DataSource = ds; RadioButtonList1.DataTextField = "make"; RadioButtonList1.DataBind();
DataBinding CheckBoxList
DataBinding Image
หัวข้อบรรยาย ASP.NET & ADO.NET DataBinding ADO.NET SQLHelper and OleDbHelper ASP.NET & ADO.NET DataBinding
ปฏิบัติการครั้งที่ 5 ตอนที่ 1 Registration ตอนที่ 2 Car Showroom สร้างฐานข้อมูล store.mdb สร้างและศึกษา Registration.aspx สร้างและศึกษา Registration.aspx.cs ตอนที่ 2 Car Showroom สร้างฐานข้อมูล carstore.mdb สร้างและศึกษา Showroom.aspx และ Showroom.aspx.cs สร้างและศึกษา PlaceOrder.aspx และ PlaceOrder.aspx.cs สร้างและศึกษา Results.aspx และ Results.aspx.cs ทำดูซี่
ปฏิบัติการครั้งที่ 5
ปฏิบัติการครั้งที่ 5
เอกสารโครงงาน (Project Documents) ความต้องการของระบบ (Requirements) ออกแบบระดับแนวคิด (Conceptual Design) ออกแบบโดยละเอียด (Detailed Design)