1. Trang chủ
  2. » Công Nghệ Thông Tin

Ltudql1 hk1 1718 lt 05 truyxuatcsdl ado net p1

38 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

ĐHQG HCM – TRƯỜNG ĐH KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN Truy xuất sở liệu với ADO.NET Lập trình ứng dụng quản lý ThS Ngơ Chánh Đức Giới thiệu ADO.NET Lập trình ứng dụng quản lý Database driver  Database driver – Trình điều kiển CSDL: ▪ Thành phần trung gian hệ quản trị CSDL bên (ứng dụng) Database driver Application DBMS Các loại database driver  ODBC driver (Open database connectivity): ▪ phát triển Microsoft ▪ Hỗ trợ Microsoft SQL Server, MySQL, PostgreSQL, Oracle  OLEDB provider ▪ Microsoft OLE DB Provider for ODBC ▪ Microsoft OLE DB Provider for Oracle ▪ Microsoft OLE DB Provider for Microsoft Jet Các loại database driver  JDBC (Java Database Connectivity) driver: ▪ Được tích hợp máy ảo java JVM ▪ Hỗ trợ CSDL sử dụng ODBC, Oracal,  ADO.Net provider: ▪ API NET Framework ▪ Hỗ trợ CSDL SQL Server, Orcal, Access, Thư viện ADO.NET  Phát triển từ thành phần xử lý liệu ADO (ActiveX Data Object)  Có thể thao tác với liệu kết nối, không kết nối XML  Là thư viện Microsoft NET Framework Đặc điểm thư viện ADO.NET  Interoperability – Tương tác nhiều hệ thống ▪ Sử dụng định dạng XML để đóng gói liệu  sử dụng HTTP  Scalability – Hỗ trợ nhiều người dùng ▪ Sử dụng liệu dạng disconnected data ▪ Sử dụng Connection pooling để giữ kết nối  Productivity – Mở rộng khả làm việc với CSDL  Performance – Hiệu suất Kiến trúc ADO.NET .NET Data Provider DataSet Connected Objets Disconnected Objects Thêm liệu  Tạo DataRow thêm vào DataTable Xem liệu  Sử dụng phương thức Select Thao tác CSDL với NET Data Provider Các bước thao tác CSDL Bước Bước Bước Bước Bước • Tạo chuỗi kết nối cnStr • Kết nối CSDL với đối tượng XXXConnection • Tạo chuỗi truy vấn strSQL thao tác CSDL • Thực thi chuỗi strSQL với đối tượng XXXCommand XXXDataAdapter • Đóng kết nối Bước : Tạo chuỗi kết nối Kết nối với CSDL Access: String cnStr = " Provider = Microsoft.Jet.OLEDB.4.0; Data Source = DeAnCongTy.mdb"; Kết nối với CSDL SQL Server: String cnStr = "Provider=SQLNCLI;Server=(local)\SQLEXPRES S;Database=DeAnCongTy;Trusted_Connection=yes;"; Chuỗi kết nối  Câu hỏi: ▪ không đường dẫn tuyệt đối đến tập tin CSDL tập tin CSDL hiểu nằm đâu? ▪ Làm biết connection string loại sở liệu khác Bước 2: Mở kết nối XXXConnection  Trong trường hợp thao tác với OleDb OleDbConnection cn = new OleDbConnection(cnStr); cn.Open();  Trong trường hợp thao tác với SqlClient SqlConnection cn = new SqlConnection(cnStr); cn.Open(); Bước 3: Tạo chuỗi strSQL thao tác CSDL  Ví dụ: Lấy danh sách tất học sinh String strSQL = "Select * From HocSinh";  Ghi chú: ▪ Trong câu SQL phức tạp phải cộng thêm chuỗi thêm parameter Bước 4: Thực thi chuỗi strSQL với XXXDataAdapter  Ví dụ thao tác với OleDb DataTable dt = new DataTable(); OleDbDataAdapter da = new OleDbDataAdapter(strSQL, cn); da.Fill(dt); Bước 4: Thực thi chuỗi strSQL với XXXCommand  Ví dụ thao tác với OleDb OleDbCommand cmd = new OleDbCommand(strSQL, cn); OleDbDataReader dr = cmd.ExecuteReader();  Đọc kết If (dr.HasRows) { While (dr.Read()) { MaHS = dr.GetInt32(0); HoTen = dr.GetString (“HoTen”); } } Bước 5: Đóng kết nối  cn.Close();  Câu hỏi: ▪ Có cần thiết phải mở/đóng kết nối với lần thao tác với CSDL? Chỉ mở/đóng lần vào đầu/cuối chương trình? Connection Pooling  Cơ chế giúp tiết kiệm chi phí việc lặp lại đóng – mở kết nối đến CSDL  Xem thêm ▪ https://docs.microsoft.com/enus/dotnet/framework/data/adonet/sql-serverconnection-pooling ▪ https://docs.microsoft.com/enus/dotnet/framework/data/adonet/ole-db-odbc-andoracle-connection-pooling DataTable vs DataReader  DataTable & XXXDataReader: lưu giữ kết truy vấn  DataTable: ▪ Truy xuất ngẫu nhiên Duyệt tới, lui ▪ Chiếm nhiều nhớ, thường dùng để hiển thị liệu DataGridView ▪ Là kết trả thực thi câu query với XXXDataAdapter  DataReader: ▪ Liên kết với kết nối CSDL ▪ Truy xuất Chỉ duyệt tới, khơng duyệt lui ▪ Chiếm nhớ Thường dùng để load liệu lên ComboBox ▪ Là kết trả thực thi câu query với XXXCommand Demo Tham khảo  ADO.NET Architecture ▪ https://docs.microsoft.com/enus/dotnet/framework/data/adonet/ado-netarchitecture  ADO.NET DataSets ▪ https://docs.microsoft.com/enus/dotnet/framework/data/adonet/ado-net-datasets  NET Framework Data Providers ▪ https://docs.microsoft.com/enus/dotnet/framework/data/adonet/data-providers

Ngày đăng: 09/04/2023, 06:28

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN