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

Tuan09 c net ado net

21 1 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

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 1,14 MB

Nội dung

10/31/2018 Lập trình Ứng dụng quản lý C#.NET ADO.NET Nội dung  Tổng quan ADO.NET  Các mơ hình kết nối  Ứng dụng có kết nối Database  Mẫu thiết kế Factory ADO.NET 10/31/2018 Nội dung  Tổng quan ADO.NET  Các mơ hình kết nối  Ứng dụng có kết nối Database  Mẫu thiết kế Factory ADO.NET Tổng quan ADO.NET  Các hệ quản trị CSDL thông dụng  FoxPro  MS Access  SQL Server  Oracle  DB2  MySQL … 10/31/2018 Lịch sử phát triển  Lịch sử phát triển phương pháp kết nối thống  ODBC (Open Database Connectivity): giao diện đặc tả phương thức thống mà nhà phát triển hệ CSDL phải thực ngôn ngữ C/C++  OLEDB (Object Linking and Embeding Database): cải tiến ODBC, liên kết tốt với thư viện nguyên gốc (native) hệ CSDL Đóng gói ODBC  ADO (ActiveX Data Object): cải tiến thêm, dễ dàng cho người phát triển ứng dụng  ADO.NET: thay ADO (khác hoàn toàn ADO) tương thích NET Mơ hình tổng qt 10/31/2018 Khái niệm  ADO.NET tập lớp thư viện sử dụng để truy xuất liệu Thêm/xóa/sửa liệu Đọc liệu Chương trình CSDL, XML…  Nằm thư viện lớp sở Net Framework  ADO.NET thành phần nội Net Framework  sử dụng ngơn ngữ hỗ trợ Net (C#, VB.Net, ) ASP.NET Windows Forms Class Framework Drawing XML Data ADO.NET Comman language Runtime System Services  Các lớp ADO.Net đặt System.Data  Chức cách sử dụng hoàn toàn giống 10/31/2018 Lợi ích  ADO kết nối CSDL tốt,  Đòi hỏi kết nối chuẩn COM Windows  Xử lý kết nối CSDL qua Internet khó khăn khơng tốt  ADO.Net  Tích hợp chặt chẽ với XML  Làm việc tốt môi trường Internet  ADO.Net cải tiến ADO  Khác biệt mơ hình (COM vs XML)  Giống chức Kiến trúc 10/31/2018 Cây phân cấp đối tượng ADO.NET Các thành phần  Connection: Là đối tượng có nhiệm vụ thực nhiệm vụ kết nối đến CSDL  Command: Dùng để thực câu lệnh SQL thao tác với CSDL như: Insert, Update, Select, Delete  DataReader: Dùng để đón nhận kết trả từ đối tượng Command  DataAdapter: Có chức cầu nối nguồn (tệp) liệu bảng cached nhớ 10/31/2018 NET Data Provider NET Data Provider XXXConnection XXXCommand XXXDataReader Data Source DataSet XXXDataAdapter (CSDL) XXXParameter XXXTransaction  Các Data Provider  System.Data.OleDb: Access, SQL Server, Oracle  System.Data.SqlClient: SQL Server  System.Data.OracleClient: Oracle  Ghi chú:  Về mặt giao tiếp lập trình ứng dụng, thư viện không khác biệt nhiều  Dùng thư viện System.Data.SqlClient truy xuất SQL Server nhanh System.Data.OleDb  Dùng thư viện System.Data.OracleClient truy xuất Oracle nhanh System.Data.OleDb 10/31/2018 Thành phần giữ liệu  DataTable đối tượng chứa bảng database nhớ  DataSet đối tượng chứa nhiều DataTable với mối liên hệ chúng (relationship) kể ràng buộc (constraint) lưu hoàn toàn nhớ để làm việc offline Như DataSet dùng để nắm giữ liệu database cho phép thay đổi liệu bên nó, sau cập nhật lại cho database Mối quan hệ 10/31/2018  Các property quan trọng  DataSet  Tables: chứa DataTable  Relations: chứa DataRelation  DataTable  Columns: chứa DataColumn  Rows: chứa DataRow  Constraints: chứa Constraint DataView  DataView: dùng để trình bày liệu có đối tượng DataTable hình thức xếp, lọc, tìm kiếm, hiệu chỉnh điều hướng  AllowDelete, AllowEdit, AllowNew: thuộc tính phép tương tác với liệu hiển thị DataView  Count: trả số lượng mẩu tin truy vấn  RowFilter: thuộc tính cho phép lọc liệu DataView tương tự mệnh đề WHERE câu lệnh SQL  Sort: thuộc tính cho phép xếp mẩu tin theo điều kiện 10/31/2018 Thành phần  DataColumn: phần tử tạo nên DataTable  ColumnName: tên column  DataType: kiểu liệu column  AllowDBNull: cho phép liệu null hay không  DefaultValue: liệu mặc định  Unique: ràng buộc liệu  DataRow: đối tượng nắm giữ liệu cho DataTable  DataRowView: đối tượng nắm giữ liệu DataView Nội dung  Tổng quan ADO.NET  Các mơ hình kết nối  Ứng dụng có kết nối Database  Mẫu thiết kế Factory ADO.NET 10 10/31/2018 Mơ hình kết nối  Connected Model Command Connection Chương trình DataReader Connection  Connection: 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 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 11 10/31/2018 Command  Command: Thực lệnh  Các lớp phụ trách  ODBCCommand  OleDBCommand  SqlCommand  OracleCommand  Thuộc tính quan trọng  Connection: xác định CSDL thực thao tác  CommandText: xác định thao tác cần thực  Parameters: xác định tham số lệnh  Phương thức quan trọng  ExecuteReader: phù hợp lệnh Select trả bảng liệu  ExecuteScalar: phù hợp lệnh Select trả giá trị  ExecuteNonQuery: phù hợp lệnh Insert, Delete, Update Reader  Reader: Thực lệnh  Đọc liệu từ CSDL   Dùng lệnh ExecuteReader ExecuteScalar Lớp XXXDataReader  Read  GetXXX  IsDBNull Dữ liệu đọc theo chiều tiến (Readonly) Book BookNam Author ID e Book Author Book Author Book3 Author 12 10/31/2018 Mơ hình ngắt kết nối  Disconnected Model DataAdapter Chương trình Thành phần DataAdapter SelectCommand DataSet InsertCommand UpdateCommand Data Source DeleteCommand  Fill: dùng SelectCommand lấy liệu từ Data Source đổ vào DataSet  Update: dùng InsertCommand, UpdateCommand DeleteCommand cập nhật liệu DataSet vào Data Source 13 10/31/2018 Nội dung  Tổng quan ADO.NET  Các mơ hình kết nối  Ứng dụng có kết nối Database  Mẫu thiết kế Factory ADO.NET Ứng dụng kết nối Database  Cấu hình chương trình  Mỗi chương trình chạy đa phần cần có tham số ràng buộc tùy theo ngữ cảnh, liên hệ bên ngồi Ví dụ: cách thức hiển thị, cách kết nối database,…  Làm để thay đổi tham số kể mà biên dịch lại chương trình  Giải pháp sử dụng Configuration NET 14 10/31/2018 Ứng dụng kết nối Database (tt)  Cấu hình chương trình  System.Configuration namespace cung cấp mơ hình lập trình để xử lý liệu cấu hình (config)  Với chương trình Application.NET liệu cấu hình lưu file App.config  Với chương trình ASP.NET liệu cấu hình lưu fiel Web.config  Cách dùng Application config: Yêu cầu bắt buộc phải add reference thư viện System.Configuration Ứng dụng kết nối Database (tt)  Sau add file config vào project  Thêm nội dung vào file config 15 10/31/2018 Ứng dụng kết nối Database (tt)  ConfigurationManager  Thuộc namespace System.Configuration  Hỗ trợ xử lý liệu file cấu hình  Cần quan tâm thuộc tính quan trọng là: AppSettings ConnectionStrings  Ví dụ để lấy chuỗi connection string từ file config Ứng dụng kết nối Database (tt)  DataGridView  Là đối tượng dùng để trình bày liệu có DataSet, DataTable, DataView hình thức khác  Có thể tùy biến column để thêm control như: Button, TextBox, ComboBox, CheckBox, Image, Link 16 10/31/2018 Ứng dụng kết nối Database (tt)  Các property:  DataSource: để gắn kết nguồn liệu mà     DataGridView trình bày CurrentRow: để lấy mẩu tin chọn CurrentCell: để lấy ô chọn DefaultCellStyle: để định dạng hiển thị cho Columns: chứa DataGridViewColumn (có lớp dẫn xuất tương ứng)  DataGridViewTextBoxColumn: column dạng TextBox  DataGridViewCheckBoxColumn: column dạng CheckBox  DataGridViewComboBoxColumn: column dạng ComboBox  …  Các event:  SelectionChanged  DoubleClick Nội dung  Tổng quan ADO.NET  Các mơ hình kết nối  Ứng dụng có kết nối Database  Mẫu thiết kế Factory ADO.NET 17 10/31/2018 Mẫu thiết kế Factory ADO.NET  ADO.NET xây dựng tảng độc lập với Hệ quản trị sở liệu nên phương pháp kết nối truy vấn database tương đồng với dạng database (Oracle, SQL, Access, MySQL,…)  Ví dụ:  Đối tượng Connection đảm nhận việc mở đóng kết nối với phương thức: Open, Close,…  Đối tượng Command đảm nhận việc thực thi lệnh với phương thức: ExecuteReader, ExecuteNonQuery, ExecuteScalar,… Mẫu thiết kế Factory ADO.NET (tt)  Tuy nhiên với Hệ quản trị CSDL khác có cách thức kết nối truy vấn riêng biệt (driver) nên lớp đối tượng kể khác  Ví dụ:  Với SQL: SqlConnection, SqlCommand,…  Với Access: OleDbConnection, OleDbCommand,…  Vậy làm cách để cài đặt thật độc lập với Hệ quản trọ CSDL ??? 18 10/31/2018 Mẫu thiết kế Factory ADO.NET (tt)  Abstract Factory Design Pattern Mẫu thiết kế Factory ADO.NET (tt)  Ví dụ 19 10/31/2018 Mẫu thiết kế Factory ADO.NET (tt)  Microsoft.NET thực mẫu thiết kế Factory ADO.NET để giải vấn đề “độc lập” với Hệ quản trị CSDL  Các thành phần quan trọng  Các lớp đối tượng Dbxxx namespace System.Data.Common  Lớp đối tượng abstract DbProviderFactory thường tạo cụ thể từ phương thức tĩnh GetFactory DbProviderFactories Mẫu thiết kế Factory ADO.NET (tt) 20 10/31/2018 Bài tập  Xây dựng ứng dụng cho phép kết nối với database QLHS với yêu cầu sử dụng SQL server MySQL (có thể thay đổi người dùng) 21

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