Enviar búsqueda
Cargar
Cs06
•
1 recomendación
•
509 vistas
Phan Thuy Quynh
Seguir
Denunciar
Compartir
Denunciar
Compartir
1 de 82
Descargar ahora
Descargar para leer sin conexión
Recomendados
Kenh sinhvien.net -giao trinh c#
Kenh sinhvien.net -giao trinh c#
Tuấn Nguyễn Văn
finalreport
finalreport
Moustafa Najm
Lập trình c# 2008 cơ bản (nhất nghệ) [thủ thuật it 360]
Lập trình c# 2008 cơ bản (nhất nghệ) [thủ thuật it 360]
leduyk11
Giam sat-switch-bằng-phần-mềm-prtg
Giam sat-switch-bằng-phần-mềm-prtg
laonap166
Slides Lập trình mạng
Slides Lập trình mạng
asakebigone
Ipv6
Ipv6
khacthang
Prtg
Prtg
Đinh Cương
File báo cáo đồ án smarthome
File báo cáo đồ án smarthome
Kim Long
Recomendados
Kenh sinhvien.net -giao trinh c#
Kenh sinhvien.net -giao trinh c#
Tuấn Nguyễn Văn
finalreport
finalreport
Moustafa Najm
Lập trình c# 2008 cơ bản (nhất nghệ) [thủ thuật it 360]
Lập trình c# 2008 cơ bản (nhất nghệ) [thủ thuật it 360]
leduyk11
Giam sat-switch-bằng-phần-mềm-prtg
Giam sat-switch-bằng-phần-mềm-prtg
laonap166
Slides Lập trình mạng
Slides Lập trình mạng
asakebigone
Ipv6
Ipv6
khacthang
Prtg
Prtg
Đinh Cương
File báo cáo đồ án smarthome
File báo cáo đồ án smarthome
Kim Long
01 tong-quan-ado
01 tong-quan-ado
duongtam1506
Dotnet
Dotnet
daicathu
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
MasterCode.vn
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
Dịch vụ viết đề tài trọn gói 0934.573.149
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.net
nataliej4
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
zzsunzz
Bài 2 - Công nghệ ADO.NET với C#
Bài 2 - Công nghệ ADO.NET với C#
MasterCode.vn
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
Web course php & csdl
Web course php & csdl
慂 志慂
2012 b01-chuong1-cac lop giao thuc p2 p-sv
2012 b01-chuong1-cac lop giao thuc p2 p-sv
Bền Văn
08 web course php ket noi csdl
08 web course php ket noi csdl
Trường Dạy Nghề
Web Architecture
Web Architecture
Hiep Luong
C1-Tong-quan-.NET-C.pdf
C1-Tong-quan-.NET-C.pdf
TrieuThuHuong1
1. giới thiệu về ngn ngữ lập trình c#
1. giới thiệu về ngn ngữ lập trình c#
Duy Lê Văn
Slide Bao cao
Slide Bao cao
Trần Hán Minh
Bai1.pdf
Bai1.pdf
TrnXunQuyn
Hướng nghiệp Lập trình Web
Hướng nghiệp Lập trình Web
VKhang Yang
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
MasterCode.vn
CVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-Vi
Lam Nguyen
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
Más contenido relacionado
Similar a Cs06
01 tong-quan-ado
01 tong-quan-ado
duongtam1506
Dotnet
Dotnet
daicathu
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
MasterCode.vn
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
Dịch vụ viết đề tài trọn gói 0934.573.149
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.net
nataliej4
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
zzsunzz
Bài 2 - Công nghệ ADO.NET với C#
Bài 2 - Công nghệ ADO.NET với C#
MasterCode.vn
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
Web course php & csdl
Web course php & csdl
慂 志慂
2012 b01-chuong1-cac lop giao thuc p2 p-sv
2012 b01-chuong1-cac lop giao thuc p2 p-sv
Bền Văn
08 web course php ket noi csdl
08 web course php ket noi csdl
Trường Dạy Nghề
Web Architecture
Web Architecture
Hiep Luong
C1-Tong-quan-.NET-C.pdf
C1-Tong-quan-.NET-C.pdf
TrieuThuHuong1
1. giới thiệu về ngn ngữ lập trình c#
1. giới thiệu về ngn ngữ lập trình c#
Duy Lê Văn
Slide Bao cao
Slide Bao cao
Trần Hán Minh
Bai1.pdf
Bai1.pdf
TrnXunQuyn
Hướng nghiệp Lập trình Web
Hướng nghiệp Lập trình Web
VKhang Yang
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
MasterCode.vn
CVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-Vi
Lam Nguyen
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
Similar a Cs06
(20)
01 tong-quan-ado
01 tong-quan-ado
Dotnet
Dotnet
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
Bài 4: Lập trình với CSDL ADO.NET & Kiến trúc không kết nối & Lập trình giao ...
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
Nghiên Cứu Phân Tích Thiết Kế Hệ Thống Quản Lý Cán Bộ, Công Chức, Viên Chức T...
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.net
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
S vnet.vn 51. [silde bài giảng] lập trình trên môi trường windows với ado.net...
Bài 2 - Công nghệ ADO.NET với C#
Bài 2 - Công nghệ ADO.NET với C#
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Luận văn: Tìm hiểu kỹ thuật lập trình Network Service, HOT
Web course php & csdl
Web course php & csdl
2012 b01-chuong1-cac lop giao thuc p2 p-sv
2012 b01-chuong1-cac lop giao thuc p2 p-sv
08 web course php ket noi csdl
08 web course php ket noi csdl
Web Architecture
Web Architecture
C1-Tong-quan-.NET-C.pdf
C1-Tong-quan-.NET-C.pdf
1. giới thiệu về ngn ngữ lập trình c#
1. giới thiệu về ngn ngữ lập trình c#
Slide Bao cao
Slide Bao cao
Bai1.pdf
Bai1.pdf
Hướng nghiệp Lập trình Web
Hướng nghiệp Lập trình Web
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
Bài 5: ADO.NET & Kiến trúc không kết nối (tiếp) Điều khiển DataGridView,Combo...
CVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-Vi
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Đề tài: Xây dựng Web bán và giới thiệu văn phòng phẩm, HAY
Cs06
1.
Bài gi ng
môn h c L p trình Windows Form v i C# Bài 7: ADO.NET Lương Tr n Hy Hi n FIT, HCMUP
2.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM N i dung ADO.NET Sơ lư c l ch s phát tri n Ki n trúc ADO.NET .NET Data Provider DataSet H i & Đáp 2
3.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Gi i thi u ADO.NET ActiveX Data Object .NET (ADO.NET) – Công ngh c a MS – Phát tri n t n n t ng ADO – Cung c p các l p đ i tư ng và hàm thư vi n ph c v cho vi c k t n i và x lý d li u .NET Application ADO.NET 3
4.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Gi i thi u ADO.NET Mô hình .NET Framework Microsoft .NET Framework Common Language Runtime Base Classes Web Services User Interface Data and XML ADO.NET XML ... ... 4
5.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM N i dung • ADO.NET Sơ lư c l ch s phát tri n Ki n trúc ADO.NET .NET Data Provider DataSet H i & Đáp 5
6.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Sơ lư c l ch s phát tri n Native API ODBC Driver Driver Driver Application Application Database Database DB API DB API DB API ODBC API DB API DB API DB API Open DataBase Connectivity 6
7.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Sơ lư c l ch s phát tri n (cont) OLEDB và ADO ADO OLE DB Application Non-Relational Data Relational Data ODBC Driver Driver Driver Provider Provider Provider Provider OLE: Object Linking and Embedding 7
8.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Sơ lư c l ch s phát tri n (cont) ADO.NET 8
9.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Introduction Stored into Database (Oracle, SQL Server) Client ADO.NET Data access technology 9
10.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET architecture Database XML XML 10
11.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET (tt) H tr b i .Net Platform S d ng công ngh XML đ chuy n đ i d li u. Tương tác v i t t c các lo i cơ s d li u. Kh năng th c thi nhanh. S d ng cho các lo i ng d ng client- server. 11
12.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM N i dung ADO.NET Sơ lư c l ch s phát tri n Ki n trúc ADO.NET .NET Data Provider DataSet H i & Đáp 12
13.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Ki n trúc Connected Model Disconnected Model Chương trình Chương trình 13
14.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET ADO.NET là m t ph n c a .NET Framework – Thư vi n l p có ch c năng thao tác d li u trong ngôn ng MS.NET ADO.NET là d ng “Disconnected” – Cho phép l y c m t c u trúc ph c t p c a DL t CSDL, sau đó ng t k t n i r i m i th c hi n thao tác x lý! – Trư c đây ADO luôn ph i duy trì k t n i trong quá trình làm vi c. 14
15.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Môi trư ng “connected” M i user có m t k t n i c đ nh t i data source Ưu đi m – Môi trư ng đư c b o v t t – Ki m soát đư c s đ ng b – D li u luôn đư c m i Như c – Ph i có m t k t n i m ng c đ nh – Scalability 15
16.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Môi trư ng “disconnected” M t t p con c a d li u trung tâm đư c sao chép và b sung đ c l p, sau đó s đư c merge l i vào d li u trung tâm. Ưu đi m – Có th làm vi c b t c lúc nào, cũng như có th k t n i b t kỳ vào Data Source – Cho phép user khác có th k t n i – Nâng cao hi u su t th c hi n c a ng d ng Khuy t – D li u không đư c c p nh t m t cách nhanh nh t – S tranh ch p có th xu t hi n và ph i gi i quy t 16
17.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET ADO.NET m nh m – K th a các ưu đi m c a ADO – K t h p v i ý tư ng thi t k hoàn toàn m i Đ c đi m n i b t – Thi t k hoàn toàn d a vào XML • Chu n giao ti p d li u t t nh t trên môi trư ng Internet hi n nay – Thi t k hoàn toàn hư ng đ i tư ng • Đ c trưng c a thư vi n .NET Framework 17
18.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET vs. ADO Đặc Điểm ADO ADO.NET DL xử lý được đưa vào bộ nhớ dưới dạng Recordset : tương đương 1 bảng dữ liệu trong database Dataset : tương đương 1 database Duyệt dữ liệu Recordset chỉ cho phép duyệt tuần tự, từng dòng một. Dataset : duyệt “tự do, ngẫu nhiên”, truy cập thẳng tới bảng, dòng ,cột mong muốn. Dữ liệu ngắt kết nối Recordset thiên về hướng kết nối, nên việc hỗ trợ ngắt kết nối không mạnh Dataset hỗ trợ hoàn toàn ngắt kết nối Trao đổi dữ liệu qua Internet Khả năng trao đổi dữ liệu ADO qua Internet thường có nhiều hạn chế. Do dùng chuẩn COM ADO.NET trao đổi dữ liệu qua Internet rất dễ dàng vì ADO.NET được thiết kế theo chuẩn XML, là chuẩn dữ liệu chính được sử dụng để trao đổi trên Internet.
19.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET Ki n trúc c a ADO.NET g m 2 ph n chính Ph n k t n i: s d ng khi k t n i CSDL và thao tác d li u, ph i th c hi n k t n i khi thao tác • Connection: qu n lý vi c đóng m DB – ???Connection: SqlConnection, OleDbConnection • Command: l nh truy v n, tương tác d li u khi đang l p k t n i – ???Command: SqlCommand, OleDbCommand • DataReader: đ c d li u, ch x lý 1 dòng d li u t i m t th i đi m – ???DataReader: SqlDataReader, OleDbDataReader • DataAdapter: c u n i gi a DataBase và DataSet 19
20.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM ADO.NET Ph n ng t k t n i: là DataSet – DataSet không quan tâm đ n Database thu c ki u gì, mà l y d li u t DataAdapter đ x lý – DataSet xem như m t Database trong b nh : b ng, quan h … – DataSet có các thành ph n con như • DataTable • DataRow • DataColumn • DataRelation • Các đ i tư ng nhóm: DataTableCollection, DataRowCollection, DataColumnCollection 20
21.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Mô hình đ i tư ng ADO.NET 21
22.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Namespace System.Data — All generic data access classes System.Data.Common — Classes shared (or overridden) by individual data providers System.Data.Odbc — ODBC provider classes System.Data.OleDb — OLE DB provider classes System.Data.ProviderBase — New base classes and connection factory classes System.Data.Oracle — Oracle provider classes System.Data.Sql — New generic interfaces and classes for SQL Server data access System.Data.SqlClient — SQL Server provider classes System.Data.SqlTypes — SQL Server data types 22
23.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Các l p thư vi n ADO.NET System.Data.OleDb: Access, SQL Server, Oracle System.Data.SqlClient: SQL Server System.Data.OracleClient: Oracle Đ c đi m: – C ba thư vi n trên v giao ti p l p trình là gi ng nhau – Dùng thư vi n SqlClient truy xu t SQL Server nhanh hơn OleDb – Tương t cho OracleClient 23
24.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider Các thành ph n .NET Data Provider 24
25.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Connected Model K t n i vào CSDL Th c hi n l nh – Thêm/Xóa/S a d li u – Đ c d li u t CSDL 25
26.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Connected Model K t n i vào CSDL – Các l p ph trách k t n i • ODBCConnection • OleDBConnection • SqlConnection • OracleConnection – Thu c tính quan tr ng • ConnectionString: xác đ nh ngu n d li u c n k t n i – Phương th c quan tr ng • Open: m k t n i • Close: đóng k t n i 26
27.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - Connection Các đ i tư ng Connection tuân th IDbConnection interface. ConnectionString: lo i Data Source c n k t n i. Open(): thi t l p k t n i đ n Data Source. Close(): ng t k t n i đ n Data Source. Data SourceApplication Connection 27
28.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – Connection (cont) K t n i vào CSDL Access OleDbConnection cnn = new OleDbConnection(); cnn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=QLHS.mdb"; cnn.Open(); //Các lệnh cần thực hiện cnn.Close(); 28
29.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – Connection (cont) K t n i vào CSDL SQL Server: SqlConnection cnn = new SqlConnection(“server= HIENLTH-PCSQLEXPRESS; database = QLHS; user id=sa; password=sa”); cnn.Open(); // Th c hi n truy v n d li u cnn.Close(); 29
30.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM SQL2005 ConnectionString Theo đ c quy n c a SQL Server (có user, pass): server= HIENLTH-PCSQLEXPRESS; database = QLHS; user id=sa; password=sa Theo đ c quy n c a h đi u hành: server= HIENLTH-PCSQLEXPRESS; database = QLHS; Trusted Connection = True; server= HIENLTH-PCSQLEXPRESS; database = QLHS; Integrated Security = True; 30
31.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM T p tin lưu tr k t n i Cho phép ngư i dùng có th c u hình các giá tr thu c tính cho chu i k t n i CSDL. Thư ng có d ng *.ini, *.txt. T .NET 1.0 tr lên có th s d ng t p tin App.config (đ nh d ng XML) ch a khai báo các tham s cùng giá tr và các ch th khác. Ví d : T p tin DBConfig.ini 31
32.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Đ c thông tin t p tin lưu tr k t n i Lo i *.ini, *.txt s d ng StreamReader (using System.IO) StreamReader docfile = new StreamReader(@"DBConfig.ini"); servername = Tach(docfile.ReadLine()); databasename = Tach(docfile.ReadLine()); username = Tach(docfile.ReadLine()); password = Tach(docfile.ReadLine()); 32
33.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Đ c thông tin t p tin lưu tr k t n i Lo i App.config <?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="SqlServer" connectionString="server=HIENLTH- PCsqlexpress;database=SEQLHS;integrated security=true" providerName="System.Data.SqlClient"/> </connectionStrings> </configuration> 33
34.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Đ c thông tin t p tin lưu tr k t n i Lo i App.config: connectionstring = ConfigurationManager.ConnectionStrings[tên]. ConnectionString; Ví d : con.ConnectionString = ConfigurationManager.ConnectionStrings[“SqlServer "]. ConnectionString; 34
35.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - Command Data SourceApplication Connection 011010011011010011 Command 35
36.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - Command Các đ i tư ng Command tuân th IDbCommand interface. Connection: k t n i dùng đ th c hi n câu l nh. CommandText: câu l nh SQL c n th c hi n trên Data Source. CommandType: lo i câu l nh trong CommandText (Text, TableDirect, StoredProc). ExecuteScalar(): th c hi n câu l nh trong CommandText, k t qu tr v là m t giá tr đơn. ExecuteNonQuery(): th c hi n câu l nh trong CommandText và không có k t qu tr v . ExecuteReader(): th c hi n câu l nh trong CommandText, k t qu tr v là m t DataReader. 36
37.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Command (cont) – SQL Server SqlConnection cnn = new SqlConnection(“server=HIENLTH- PCSQLEXPRESS; database=QLHS; user id=sa; password=sa”); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn; cmd.CommandText = “SELECT COUNT(*) FROM HocSinh”; cmd.CommandType = CommandType.Text; cnn.Open(); int count = (int)cmd.ExecuteScalar(); cnn.Close(); 37
38.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Command (cont) – SQL Server SqlConnection cnn = new SqlConnection(“server=HIENLTH- PCSQLEXPRESS; database=QLHS; user id=sa; password=sa”); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn; cmd.CommandText = “INSERT INTO HocSinh(Ho, Ten, DienThoai) VALUES(N‘Nguy n Văn’, N‘Trư ng’, ‘0989366990’)”; cmd.CommandType = CommandType.Text; cnn.Open(); cmd.ExecuteNonQuery(); cnn.Close(); 38
39.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Command (cont) – MS Access Th c hi n l nh – Thêm/Xóa/S a d li u Ví dụ: OleDbCommand cmd = new OleDbCommand(); cmd.Connection = cnn; cmd.CommandText = “INSERT INTO Hocsinh VALUES(5, 'Lê Văn Xiêm','11/12/2006', 'Khánh Hòa', '221 Nguy n Văn C ')"; cmd.ExecuteNonQuery(); 39
40.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - Parameter M c đích s d ng: M t vài giá tr trong câu l nh ch bi t khi th c hi n câu l nh. C n th c hi n câu l nh nhi u l n v i các giá tr khác nhau. Các bư c th c hi n: Tham s hóa câu l nh: ? ho c @[tên tham s ]. T o các parameters tương ng cho command. Đ t giá tr cho các parameter m i khi dùng command th c hi n câu l nh. 40
41.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – Parameter(cont) Tham s hóa SQL Data Provider: cmd.CommandText = “SELECT * FROM HocSinh WHERE tenhocsinh = @ten”; cmd.CommandText = “INSERT INTO HocSinh(id_hocsinh, tenhocsinh, dtb)” + “ VALUES(@id, @ten, @dtb)”; Các provider khác: cmd.CommandText = “SELECT * FROM HocSinh WHERE tenhocsinh = ?”; cmd.CommandText = “INSERT INTO HocSinh(id_hocsinh, tenhocsinh, dtb)” + “VALUES(?, ?, ?)”; 41
42.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – Parameter(cont) T o các parameter cmd.Parameters.Add(“@id”, 5); cmd.Parameters.Add(“@ten”, “Nguy n Văn A”); cmd.Parameters.Add(“@dtb”, 8.5); Đ t giá tr cho các parameter foreach (Student s in studentList) { cmd.Parameters[“@id”] = i; cmd.Parameters[“@ten”] = s.studentName; cmd.Parameters[“@dtb”] = s.studentMarks; cmd.ExecuteNonQuery(); } 42
43.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Parameter(cont) – MS Access Ví d OleDbCommand cmd = new OleDbCommand(); cmd.Connection = cnn; cmd.CommandText = "INSERT INTO Hocsinh VALUES (@Ma,@Ten,@Diachi,@NgaySinh,@Toan,@Van)“; OleDbParameter para=cmd.Parameters.Add("@Ma",OleDbType.Integer); para.Value=1; para=cmd.Parameters.Add("@Ten",OleDbType.VarWChar); para.Value= N"Lê Văn A"; para=cmd.Parameters.Add("@Diachi",OleDbType.VarWChar); para.Value= N"Nguy n Văn C "; para = cmd.Parameters.Add("@Ngaysinh", OleDbType.Date); para.Value = new DateTime(1982,10,1); para=cmd.Parameters.Add("@Toan",OleDbType.Integer); para.Value=5; para=cmd.Parameters.Add("@Van",OleDbType.Integer); para.Value=7; cmd.ExecuteNonQuery(); 43
44.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – DataReader MaHS HoTen DiaChi i HocSinh I DiaChi i Data SourceApplication Connection Command DataReader ExecuteReader() Read() 011010011011010011
45.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – DataReader DataReader là gì? – Ch di chuy n t i phía trư c, ch đ c – truy c p d li u nhanh, – k t n i đ n ngu n d li u (data source) – Qu n lý d li u, ho c ràng bu c vào đi u khi n list- bound – S d ng tài nguyên 45
46.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - DataReader Các đ i tư ng DataReader tuân th interface IDataReader. HasRow: cho bi t còn d li u đ đ c n a không. Read(): đ c m t m u tin vào DataReader. Toán t [ i ]: truy xu t đ n c t i trong m u tin đ c đư c. Close(): đóng DataReader. Lưu ý: Truy xu t tu n t và không quay lui. Không c p nh t d li u. Cơ ch k t n i. 46
47.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – DataReader (cont) SqlConnection cnn = new SqlConnection(“server=localhost; database=Northwind; user id=sa; password=sa”); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn; cmd.CommandText = “select * from Orders”; cmd.CommandType = CommandType.Text; cnn.Open(); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { MessageBox.Show(dr[“CustomerID”].ToString()); } dr.Close(); cnn.Close(); 47
48.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataReader (cont) – MS Access Th c hi n l nh – Đ c d li u t CSDL – Ví d OleDbDataReader rd = cmd.ExecuteReader(); while (rd.Read()) { if (!rd.IsDBNull(3)) MessageBox.Show(dr[“CustomerID”].ToString()); } 48
49.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - SqlDataAdapter B đ c d li u t CSDL ngu n (SQLServer) và đ vào đ i tư ng DataSet hay DataTable. Phân trang d li u Phương th c: – Fill(datasource) – Fill(datasource, start, number, “tablename”) 49
50.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider - DataAdapter Các đ i tư ng DataAdapter tuân th interface IDbDataAdapter. Fill(DataSet): dùng SelectCommand l y d li u t Data Source đ vào DataSet. Update(DataSet): dùng InsertCommand, UpdateCommand và DeleteCommand c p nh t d li u trong DataSet vào Data Source. SelectCommand UpdateCommand InsertCommand DeleteCommand DataAdapter Data Source DataSet 50
51.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM .NET Data Provider – DataAdapter (cont) SqlConnection cnn = new SqlConnection(“server=localhost; database=Northwind; user id=sa; password=sa”); SqlDataAdapter da = new SqlDataAdapter(“select * from Orders”, cnn) DataSet ds = new DataSet(); da.Fill(ds); // Does something on the DataSet. da.Update(ds); 51
52.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM N i dung Sơ lư c l ch s phát tri n Ki n trúc ADO.NET .NET Data Provider DataSet H i & Đáp 52
53.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM System.Data namespace DataSet — This object is designed for disconnected use and can contain a set of DataTables and include relationships between these tables. DataTable — A container of data that consists of one or more DataColumns and, when populated, will have one or more DataRows containing data. DataRow — A number of values, akin to a row from a database table, or a row from a spreadsheet. DataColumn — This object contains the definition of a column, such as the name and data type. DataRelation — A link between two DataTable classes within a DataSet class. Used for foreign key and master/detail relationships. Constraint — This class defines a rule for a DataColumn class (or set of data columns), such as unique values. 53
54.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet DataSet là cơ s d li u đư c lưu tr trong b nh chính (in- memory database). Cơ ch không k t n i. G m các đ i tư ng – DataTable – DataRelation Data Source DataSet DataSet là gì? Ánh x 54
55.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) DataSet DataTable Columns Rows DataColumn DataRow Tables Relations DataRelation 55
56.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Các phương th c c a DataSet Thêm 1 đ i tư ng DataTable: ds.Tables.Add(datatable_name); Xóa 1 đ i tư ng: – ds.Tables.Remove(datatable_name); – ds.Table.RemoveAt(datatable_index); Lo i b t t c DataTable: ds.Tables.Clear(); Ki m tra t n t i: ds.Tables.Contains(datatable_name); Ki m tra t n t i và có th xóa đư c: ds.Tables.CanRemove(datatable_name); Đ m s lư ng DataTable: ds.Tables.Count (thu c tính) 56
57.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Các phương th c c a DataSet Ghi ra file XML: ds.WriteXml(ten_file_xml); Đ c t file XML: ds.ReadXml(ten_file_xml); 57
58.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet - DataTable DataTable th hi n m t b ng trong cơ s d li u. G m các đ i tư ng: – DataColumn – DataRow Các thu c tính và phương th c: TableName: tên b ng. Columns: danh sách các c t (DataColumn). Rows: danh sách các m u tin (DataRow). PrimaryKey: danh sách các c t làm khóa chính (DataColumn). NewRow(): t o m t m u tin m i. 58
59.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet - DataColumn DataColumn th hi n m t c t trong b ng. Các thu c tính và phương th c: ColumnName: tên c t. DataType: ki u d li u c t. 59
60.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet - DataRow DataRow th hi n m t m u tin trong b ng. Các thu c tính và phương th c: RowState: tr ng thái c a m u tin (Added, Modified, Deleted, Unchanged, Detach). Toán t [i]: truy xu t đ n c t i c a m u tin. Delete(): đánh d u xóa m u tin. 60
61.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) DataTable table = new DataTable(“SinhVien”); table.Columns.Add(new DataColumn(“MSSV”, Type.GetType(“Int32”)); table.Columns.Add(new DataColumn(“HoTen”, Type.GetType(“string”)); table.PrimaryKey = new DataColumn[] { table.Columns[“MSSV”] }; DataRow row = table.NewRow(); row[“MSSV”] = 123; row[“HoTen”] = “Nguy n Văn A”; table.Rows.Add(row); 61
62.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) SqlConnection cnn = new SqlConnection(“server=HIENLTH-PCSQLEXPRESS; database=Northwind; user id=sa; password=sa”); SqlDataAdapter da = new SqlDataAdapter(“select * from Orders”, cnn) DataSet ds = new DataSet(); da.Fill(ds); foreach (DataRow row in ds.Tables[0].Rows) row[“OrderDate”] = DateTime.Now; da.Update(ds); 62
63.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) SqlConnection cnn = new SqlConnection(“server=HIENLTH- PCSQLEXPRESS; database=Northwind; user id=sa; password=sa”); SqlDataAdapter da = new SqlDataAdapter(“select * from Orders”, cnn) DataSet ds = new DataSet(); da.Fill(ds); foreach (DataRow row in ds.Tables[0].Rows) if (row[“CustomerID”].ToString() == “Nguy n Văn A”) row.Delete(); da.Update(ds); 63
64.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) So sánh DataSet và DataReader: T c đ truy xu t. Bô nh lưu tr . Thu n ti n trong thao tác. Cơ ch k t n i và không k t n i. 64
65.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) – MS Access Đ c d li u t CSDL OleDbDataAdapter da = new OleDbDataAdapter( "select * from HocSinh", cnn); DataSet dsHocSinh=new DataSet(); da.Fill(dsHocSinh, "HocSinh"); for (int i = 0; i < dsHocSinh.Tables["HocSinh"].Rows.Count; i++) { listBox1.Items.Add( dsHocSinh.Tables["HocSinh"].Rows[i]["HoTen"].ToString()); } 65
66.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) – MS Access X lý d li u – Thêm d li u DataRow newRow; newRow=dsHocSinh.Tables["HocSinh"].NewRow(); newRow[0] = 10; newRow[1] = "Lê Th B"; dsHocSinh.Tables["HocSinh"].Rows.Add(newRow); – Xoá d li u dsHocSinh.Tables["HocSinh"].Rows[0].Delete(); – Thay đ i d li u DataRow row = dsHocSinh.Tables["HocSinh"].Rows[1]; row.BeginEdit(); row[0] = 11; row[1] = "Lê Th C"; row.EndEdit(); 66
67.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataSet (cont) – MS Access C p nh t d li u xu ng CSDL OleDbCommandBuilder buider = new OleDbCommandBuilder(da); da.Update(dsHocSinh, "HocSinh"); 67
68.
Bài gi ng
môn h c L p trình Windows Form v i C# Trình bày d li u
69.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Nh c l i SqlDataAdapter SqlDataAdapter đư c dùng đ đi n d li u vào đ i tư ng DataSet, DataTable và c p nh t d li u t hai đ i tư ng này tr l i d li u ngu n. Các trư ng h p t o đ i tư ng SqlDataAdapter: – SqlDataAdapter(string SQL, SqlConnection cnn); – SqlDataAdapter(SqlCommand cmd); Đi n d li u: – sqlDataAdapter.Fill(datasetname); – sqlDataAdapter.Fill(datatable); – sqlDataAdapter(DataSet dataset, int start, int end); – sqlDataAdapter(int start, int end, DataTable datatable); Phân trang 69
70.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM C p nh t d li u t DataAdapter Trong Form khai báo các thu c tính là đ i tư ng DataSet (hay DataTable) L y d li u: Đ d li u vào DataSet dataAdapter.Fill(dataset); C p nh t d li u: C p nh t d li u t DataSet vào CSDL dataAdapter.Update(dataset); 70
71.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataView Th hi n c a 1 DataTable. Đóng vai trò quan tr ng trong DataBinding 1 DataTable có th có nhi u View khác nhau Dùng đ trình bày d li u dư i hình th c l c, s p x p, tìm ki m, hi u ch nh và đi u hư ng d li u trong DataTable DataTable DataViewDataViewDataView 71
72.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Khai báo DataView Có th s d ng các cú pháp sau: – dataView = new DataView(); dataView.Table = dataTable; – dataView = new DataView(dataTable); – dataView = new DataView(dataTable, sortFilter, sortString, DataViewRowState); 72
73.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataView Tên Ý nghĩa AllowDelete Cho phép xóa trên thể hiện AllowEdit Cho phép chỉnh sửa AllowNew Cho phép thêm mới Item (index) Lấy giá trị value tại column có chỉ số index RowFilter Thiết lập Expression dùng để lọc row Sort Sắp xếp tăng hoặc giảm theo column Table Cho biết view này được tạo bởi table nào Count Lấy số lượng mẫu tin có trong DataView Danh sách các thu c tính 73
74.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataView Tên Ý nghĩa AddNew Thêm mới 1 mẫu tin Delete(index) Xóa mẫu tin thứ index Danh sách các phương th c 74
75.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM75
76.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataBinding Hi n th d li u trong DataTable, … vào các control (TextBox, ComboBox, DataGrid, …) G m 2 lo i: – Simple Binding – Complex Binding Ví d : Đi n n i dung b ng TonGiao vào ComboBox Tôn Giáo DataTable bang = ketnoi.GetDataTable(“SELECT * FROM TonGiao”); cboTonGiao.DataSource = bang; cboTonGiao.DisplayMember = bang.Columns[1].ToString();//TenTG cboTonGiao.SelectedValue = bang.Columns[0].ToString();//MaTG 76
77.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Đưa d li u vào lư i DataGridView 77
78.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Đi n d li u vào DataGridView datagridview.DataSource = datatable; datagridview.DataSource = dataset.Tables[index]; 78
79.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM DataGridView (tt) Các thu c tính c a DataGridView: – DataSource: đi n d li u vào DataGridView – CurrentRow: l y m u tin đang ch n – CurrentCell: l y ô đang ch n Các bi n c (Event) c a DataGridView: – SelectionChanged: x y ra khi ngư i dùng di chuy n vào vùng d li u – DoubleClick 79
80.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM N i dung Sơ lư c l ch s phát tri n Ki n trúc ADO.NET .NET Data Provider DataSet H i & Đáp 80
81.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM Tham kh o Bài gi ng ADO.NET c a th y Nguy n Minh Huy, ĐH KHTN TpHCM MSDN 81
82.
L p trình
Windows Form v i C# Lương Tr n Hy Hi n © 2010 Khoa CNTT – ĐH Sư Ph m TpHCM82
Descargar ahora