Upload
lets-go-to-study
View
483
Download
6
Embed Size (px)
Citation preview
Introduction
ActiveX Data Objects.NET គឺជាបច្ចេកវជិាា របស់ Microsoft ដែលផ្តល់លទ្ធភាពឲ្យច្ ើង Access ច្ៅកាន់ Database ពី Applications។
ADO.NET គឺជាប្បច្េទ្ Disconnect Object Model. ADO.NET គឺជាបច្ចេកវជិាា ថ្មីសប្ាប់ជំនាន់ .NET framework ដែលអនុញ្ញា តឲ្យ Users ច្ប្ចើនអាច connect ច្ៅកាន់ Database កនុងច្ពលដតមួ ។
Hor Sonoeun
2
ASP.NET
ADO.NET Objects
ADO.NET class ាន Objects ជាច្ប្ចើនច្ែើមបីបច្ងកើតទំ្នាក់ទំ្នងរវាង Database និង Application ែូចជា៖ Connection Object Command Object DataReader Object DataSet Object DataTable Object DataView Object DataAdapter Object
Hor Sonoeun
3
ASP.NET
DataSource
មុនច្ពលចាប់ច្ផ្តើមច្ប្បើ ADO.NET ច្ ើងប្តូវសច្ប្មចចិតតជាមុន ថាច្តើច្ ើងនឹងច្ប្បើប្ាស់ DataSouce មួ ណា។
DataSource ដែលច្គច្ប្បើានែូចជា Ms Access SQL Server Oracle And others
Hor Sonoeun
4
ASP.NET
Six Steps to Connect to DataSource
1. Import NameSpace ដែលចំាាច់ 2. ភាា ប់ Connection ច្ោ ការច្ប្បើ sqlConnection Object 3. បច្ងកើត SQL Query ច្ោ ការច្ប្បើ sqlCommand Object 4. ច្បើក Connection ច្ែើមបី Execute SQL Query ច្ែើមបី
ទាញ កលទ្ធផ្ល បញ្េូ លច្ៅកនុង sqlDataReader Object
5. បង្ហា ញលទ្ធផ្លពី sqlDataReader ច្ៅច្លើ Web page 6. បិទ្ connection ច្ៅកាន់ Database
Hor Sonoeun
5
ASP.NET
Using SQL DataSource
ច្ៅកនុងការសិកាច្នេះ ច្ ើងកំណត់ ក DataSource មកសិកា។
ជាមួ SQL DataSource ច្ ើងប្តូវ import NameSpace របស់ sqlClient ែូចខាងច្ប្កាម៖
បនាា ប់ពីច្ ើង import NameSpace រចួច្ ើ ច្ ើងនឹងទួ្លាន sql classes ច្ែើមបីបច្ងកើត objects ច្ផ្េងៗែូចជា៖
Hor Sonoeun
6
ASP.NET
System.Data.SqlClient
Using SQL DataSource
sqlConnection : ច្ែើមបីបច្ងកើត connection ច្ៅកាន់ Database របស់ SQL Server។
sqlCommand : ច្ែើមបីផ្ាុក SQL Query ដែលច្ ើងប្តូវប្បតិបតតិច្ៅកាន Database របស់ SQL Server។
sqlDataReader : ស្សច្ែៀងនឹង RecordSet ប ុដនត sqlDataReader ាននាទី្ប្តឹមដតអាន ច្ ើ អានមតងានដតមួ record។
Hor Sonoeun
7
ASP.NET
Connecting to SQL DataSource
ច្ែើមបីភាា ប់ច្ៅកាន់ Database របស់ SQL Server ច្គានរបូមនតែូចខាងច្ប្កាម៖ សប្ាប់ Window Authentication
សប្ាប់ SQL Authentication
Hor Sonoeun
8
ASP.NET
Server = ComputerName\serverName; Database=databasName; Integrated Security=true
Server = ComputerName\serverName; Database=databasName; User ID=UserName; Password = password
Server = ComputerName\serverName; Database=databasName; Integrated Security=true
Connecting to SQL DataSource
ឧទា រណ៏ខាងច្ប្កាមច្ ើងភាា ប់ច្ៅកាន់ Database ច្ ម្ េះ dbSales ដែលច្ ើងានបច្ងកើតកនុងច្មច្រៀនមុន របស់ SQL Server ច្ោ ការច្ប្បើ sqlConnection ជាមួ Window Authentication។
Hor Sonoeun
9
ASP.NET
Imports System.Data.SqlClient Partial Class _Default Inherits System.Web.UI.Page Protected Sub btnOK_Click(…..) Handles btnOK.Click Dim cnn As New SqlConnection("server=Sonoeun-PC; Database=dbSales; Integrated Security=True") ………………….. End Sub End Class
Creating SQL Query (sqlCommand)
បនាា ប់ពីច្ ើងានភាា ប់ Connection ច្ ើ ច្ ើងនឹងចាប់ច្ផ្តើមបច្ងកើត SQL Query ច្ោ ការច្ប្បើ sqlCommand class សប្ាប់ច្ោលបំណងរបស់ច្ ើងែូចជា Insert Delete Update រ ឺselect ជាច្ែើម។
របូមនតទូ្ច្ៅ
Hor Sonoeun
10
ASP.NET
Dim commandName As New SqlCommand (“SQL Query”)
INSERT
បច្ងកើត SQL Query ច្ែើមបីបញ្េូ លទិ្ននន័ ច្ៅកនុង Table ច្ ម្ េះ tblSales។
Hor Sonoeun
11
ASP.NET
Protected Sub btnOK_Click(……) Handles btnOK.Click Dim cnn As New SqlConnection("server=Sonoeun-PC; " & _ “Database=dbSales; Integrated Security=True")
Dim cmd As New SqlCommand("Insert into tblSales Values " & _ "(@salId, @emId, @proName, @sDate, @Quty, @UPrice)", cnn) cmd.Parameters.Add("@salId", System.Data.SqlDbType.NChar) cmd.Parameters("@salId").Value = txtSalId.Text
INSERT
Hor Sonoeun
12
ASP.NET
cmd.Parameters.Add("@emId", System.Data.SqlDbType.NChar) cmd.Parameters("@emId").Value = txtEmId.Text cmd.Parameters.Add("@proName", System.Data.SqlDbType.NVarChar) cmd.Parameters("@proName").Value = drpProName.SelectedItem.Value cmd.Parameters.Add("@sDate", System.Data.SqlDbType.DateTime) cmd.Parameters("@sDate").Value = CalSalDate.SelectedDate cmd.Parameters.Add("@Quty", System.Data.SqlDbType.Int) cmd.Parameters("@Quty").Value = txtQuty.Text cmd.Parameters.Add("@UPrice", System.Data.SqlDbType.Decimal) cmd.Parameters("@UPrice").Value = txtUPrice.Text cnn.Open() cmd.ExecuteNonQuery() cnn.Close() End Sub
Searching for an Item
បច្ងកើត SQL Query ច្ែើមបីដសែងរកទិ្ននន័ ច្ៅកនុង Table ច្ ម្ េះ tblSales តាមរ ៈ sale id។
Hor Sonoeun
13
ASP.NET
Protected Sub btnSearch_Click(…) Handles btnSearch.Click Dim aSale As SqlDataReader Dim cnn As New SqlConnection("server=Sonoeun-PC;” & _ Database=dbSales; Integrated Security=True") Dim cmd As New SqlCommand("Select * From " & _ " tblSales Where SalId=@SalId", cnn) cmd.Parameters.Add("@salId", System.Data.SqlDbType.NChar) cmd.Parameters("@salId").Value = txtSalId.Text cnn.Open()
Searching for an Item
Hor Sonoeun
14
ASP.NET
aSale = cmd.ExecuteReader() If aSale.Read() Then txtPro.Text = aSale.Item("proName") txtQuty.Text = aSale.Item("Quty") txtUPrice.Text = aSale.Item("UPrice") txtSalDate.Text = aSale.Item("sDate") txtEmploee.Text = aSale.Item("emId") End If aSale.Close() cnn.Close() End Sub
DELETE
បច្ងកើត SQL Query ច្ែើមបីលុបទិ្ននន័ ពី Table ច្ ម្ េះ tblSales ដែលាន SalId ប្តូវានបញ្េូ លច្ៅកនុង Sale ID។
Hor Sonoeun
15
ASP.NET
Protected Sub btnOK_Click(……) Handles btnOK.Click Dim cnn As New SqlConnection("server=Sonoeun-PC;” & _ Database=dbSales; Integrated Security=True") Dim cmd As New SqlCommand("Delete From " & _ " tblSales Where SalId=@SalId", cnn) cmd.Parameters.Add("@SalId", System.Data.SqlDbType.NChar) cmd.Parameters("@SalId").Value = txtSalId.Text cnn.Open() cmd.ExecuteNonQuery() cnn.Close() End Sub
UPDATE
បច្ងកើត SQL Query ច្ែើមបីដកដប្បទិ្ននន័ ច្ៅកនុង Table ច្ ម្ េះ tblSupliers។
Hor Sonoeun
16
ASP.NET
Protected Sub btnUpdate_Click(…) Handles btnUpdate.Click Dim cnn As New SqlConnection("server=Sonoeun-PC;” & _ Database=dbSales; Integrated Security=True") Dim cmd As New SqlCommand("Update tblSupliers" & _ " Set supName=@supName, " & _ " supCountry=@supCountry Where SupId=@SupId", cnn)
UPDATE
Hor Sonoeun
17
ASP.NET
cmd.Parameters.Add("@SupId", System.Data.SqlDbType.NChar) cmd.Parameters("@SupId").Value=txtSupId.Text cmd.Parameters.Add("@supName", System.Data.SqlDbType.NChar) cmd.Parameters("@supName").Value=txtSupName.Text cmd.Parameters.Add("@supCountry", System.Data.SqlDbType.NVarChar) cmd.Parameters("@supCountry").Value=txtSupCountry.Text cnn.Open() cmd.ExecuteReader() cnn.Close() End Sub
SELECT
បច្ងកើត SQL Query ច្ែើមបីទាញ កទិ្ននន័ ពី Table ច្ ម្ េះ tblEmployees មកោក់ច្លើ Web page ច្ោ ការច្ប្បើ Repeater Control។
Repeater Control ានទ្ប្មង់ែូចខាងច្ប្កាម៖
Hor Sonoeun
18
ASP.NET
<asp:Repeater ID="rptDisEmp" runat="server"> <HeaderTemplate> </HeaderTemplate> <ItemTemplate> </ItemTemplate> <FooterTemplate> </FooterTemplate> </asp:Repeater>
SELECT
ច្នេះគឺជា Repeater សប្ាប់បង្ហា ញពត៌ានរបស់ Employees
Hor Sonoeun
19
ASP.NET
<asp:Repeater ID="rptDisEmp" runat="server"> <HeaderTemplate> <table width=80% border=1> <tr> <th>Employee ID</th> <th>Employee Name</th> <th>Employee Sex</th> <th>Employee DOB</th> </tr> </HeaderTemplate>
<ItemTemplate> <tr> <td><%#Eval("emId")%></td> <td><%#Eval("emName")%></td> <td><%#Eval("emSex")%></td> <td><%#Eval("emODB")%></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater>
SELECT
ច្នេះគឺជា Behind Code ច្ៅច្ពលដែលអនកចុចច្លើ ប ូតុង btnDisplay
Hor Sonoeun
20
ASP.NET
Protected Sub btnDisplay_Click(…) Handles btnDisplay.Click Dim anEmp As SqlDataReader Dim cnn As New SqlConnection("server=Sonoeun-PC;” &_ “Database=dbSales; Integrated Security=True") Dim cmd As New SqlCommand("Select * From tblEmployees ", cnn) cnn.Open() anEmp = cmd.ExecuteReader() rptDisEmp.DataSource = anEmp rptDisEmp.DataBind() anEmp.Close() cnn.Close() End Sub
Executing SQL Query
ច្ែើមបីច្ ែ្ើការ Execute SQL Query, ADO.NET ផ្តល់នូវ Execute command ែូចជា ExecuteReader: សប្ាប់បញ្េូ ល ទិ្ននន័ ជា Record(s) រ ឺRow(s) ពី Select SQL Query ជា Object.
ExecuteScalar: សប្ាប់បញ្េូ ល ទិ្ននន័ Single Value ពី Select SQL Query ច្ៅកនុង SqlDataReader Object.
ExecuteNonQuery: គឺជា Execute method មួ ដែលច្គច្ប្បើច្ៅច្ពលច្គ Execute Insert, Modify, រ ឺUpdate SQL Query.
Hor Sonoeun
21
ASP.NET
Database Authentication
ចំណុចច្នេះច្ ើងនឹងនិយា អំពីមច្្ោា ច្ែើមបីភាា ប់ រកឺារផ្តល់សិទ្ធិ ច្ែើមបី log ចូលច្ៅកនុង database។
Database authentication សប្ាប់ SQL Server ានពីរគឺ៖ Window Authentication គឺជាការអាស្ស័ ច្លើ user របស់ window ច្ែើមបី log ចូលកនុង Database.
SQL Server Authentication គឺជាការអាស្ស័ ច្លើ user របស់ SQL ច្ែើមបី log ចូលកនុង Database.
Hor Sonoeun
22
ASP.NET
Database Authentication
កនលងមកច្ ើងច្ប្បើ Window Authentication ច្ែើមបី Log ចូលច្ៅ Database.
ច្ែើមបី Log ចូលច្ោ ការច្ប្បើ SQL Authentication ច្ ើងប្តូវាន User និង Login របស់ SQL។
ច្ ើ ប្តូវប្ាកែកនុងចិតតថាអនកានផ្តល់សិទ្ធិឲ្យ user ច្នាេះានប្តឹមប្តូវច្ ើ ។
ឧទា រណ៏ច្ ើងានបច្ងកើត Login និង user មួ ច្ ម្ េះ “noeun” ាន password=“123456”
Hor Sonoeun
23
ASP.NET
Database Authentication
ច្ពលច្នាេះច្ ើងអាចសរច្សរ connect ច្ៅកាន់ Database ច្ ម្ េះ dbSales ែូចខាងច្ប្កាម៖
Hor Sonoeun
24
ASP.NET
Imports System.Data.SqlClient Partial Class _Default Inherits System.Web.UI.Page Protected Sub btnOK_Click(…..) Handles btnOK.Click Dim cnn As New SqlConnection("server=Sonoeun-PC; Database=dbSales; User Id=noeun Password=123456") ………………….. End Sub End Class