Giáo Trình Lập Trình Cơ Sở Dữ Liệu ADO.NET

Giáo trình lập trình cơ sở dữ liệu nghề tin học ứng dụng cao đẳng cung cấp kiến thức và kỹ năng cần thiết cho sinh viên trong ngành công nghệ thông tin.

Chuyên ngành

Tin Học

Người đăng

Ẩn danh

Thể loại

Giáo Trình

2022

69
6
0

Phí lưu trữ

30 Point

Mục lục chi tiết

1. BÀI 1: TỔNG QUAN VÀ ADO

2. BÀI 2: CÁC ĐỐI TƯỢNG TRONG MÔ HÌNH KẾT NỐI ADO

3. BÀI 3: MÔ HÌNH MVC (MODEL – VIEW – CONTROLLER)

4. BÀI 4: CRYSTAL REPORT VÀ LINKQ

5. BÀI 5: ĐÓNG GÓI ỨNG DỤNG

Tóm tắt

I. Tổng quan về Giáo Trình Lập Trình Cơ Sở Dữ Liệu ADO

Giáo trình Lập trình Cơ sở dữ liệu ADO.NET cung cấp kiến thức cơ bản và nâng cao về việc sử dụng ADO.NET trong phát triển ứng dụng. ADO.NET là một phần quan trọng trong .NET Framework, cho phép lập trình viên kết nối và thao tác với các hệ quản trị cơ sở dữ liệu như SQL Server, Oracle và Access. Nội dung giáo trình bao gồm các khái niệm cơ bản, kiến trúc ADO.NET, và các phương pháp kết nối cơ sở dữ liệu.

1.1. Giới thiệu về ADO.NET và vai trò của nó

ADO.NET (ActiveX Data Objects.NET) là một công nghệ trong .NET Framework, giúp lập trình viên thao tác với cơ sở dữ liệu một cách hiệu quả. Nó cung cấp các lớp đối tượng và hàm thư viện để kết nối và xử lý dữ liệu từ nhiều hệ quản trị cơ sở dữ liệu khác nhau.

1.2. Kiến trúc ADO.NET và các thành phần chính

Kiến trúc ADO.NET bao gồm hai thành phần chính: Data Provider và DataSet. Data Provider chịu trách nhiệm kết nối và thực hiện các lệnh SQL, trong khi DataSet lưu trữ dữ liệu trong bộ nhớ để xử lý.

II. Vấn đề và Thách thức trong Lập Trình ADO

Mặc dù ADO.NET mang lại nhiều lợi ích, nhưng cũng tồn tại một số thách thức trong quá trình phát triển ứng dụng. Việc quản lý kết nối, xử lý lỗi và tối ưu hóa hiệu suất là những vấn đề quan trọng mà lập trình viên cần chú ý.

2.1. Quản lý kết nối và hiệu suất

Quản lý kết nối là một trong những thách thức lớn nhất khi làm việc với ADO.NET. Việc mở và đóng kết nối thường xuyên có thể làm giảm hiệu suất ứng dụng. Sử dụng Connection Pooling là một giải pháp hiệu quả để cải thiện hiệu suất.

2.2. Xử lý lỗi trong ADO.NET

Xử lý lỗi là một phần quan trọng trong lập trình ADO.NET. Lập trình viên cần phải nắm rõ cách xử lý các ngoại lệ để đảm bảo ứng dụng hoạt động ổn định và không bị gián đoạn.

III. Phương pháp Kết Nối Cơ Sở Dữ Liệu với ADO

Có nhiều phương pháp để kết nối cơ sở dữ liệu trong ADO.NET. Các phương pháp này bao gồm việc sử dụng SqlConnection, OracleConnection và OleDbConnection. Mỗi phương pháp có những đặc điểm riêng và phù hợp với từng loại cơ sở dữ liệu.

3.1. Kết nối với SQL Server bằng SqlConnection

Để kết nối với SQL Server, lập trình viên cần khai báo đối tượng SqlConnection và sử dụng chuỗi kết nối phù hợp. Việc mở kết nối và thực hiện các lệnh SQL sẽ được thực hiện thông qua đối tượng này.

3.2. Kết nối với Oracle bằng OracleConnection

Tương tự như SqlConnection, OracleConnection cho phép lập trình viên kết nối với cơ sở dữ liệu Oracle. Cần chú ý đến chuỗi kết nối và các thuộc tính cần thiết để đảm bảo kết nối thành công.

IV. Ứng dụng Thực Tiễn của ADO

ADO.NET được ứng dụng rộng rãi trong phát triển phần mềm, đặc biệt là trong các ứng dụng web và desktop. Việc sử dụng ADO.NET giúp lập trình viên dễ dàng thao tác với cơ sở dữ liệu và cải thiện hiệu suất ứng dụng.

4.1. Phát triển ứng dụng web với ADO.NET

Trong phát triển ứng dụng web, ADO.NET cho phép lập trình viên kết nối và truy xuất dữ liệu từ cơ sở dữ liệu một cách nhanh chóng. Sử dụng ADO.NET giúp tối ưu hóa trải nghiệm người dùng.

4.2. Tích hợp ADO.NET với Entity Framework

Entity Framework là một ORM (Object-Relational Mapping) mạnh mẽ, cho phép lập trình viên làm việc với cơ sở dữ liệu thông qua các đối tượng. ADO.NET có thể được tích hợp với Entity Framework để cải thiện khả năng quản lý dữ liệu.

V. Kết luận và Tương Lai của ADO

ADO.NET vẫn là một công nghệ quan trọng trong phát triển ứng dụng .NET. Với sự phát triển không ngừng của công nghệ, ADO.NET sẽ tiếp tục được cải tiến để đáp ứng nhu cầu ngày càng cao của lập trình viên.

5.1. Xu hướng phát triển ADO.NET trong tương lai

Trong tương lai, ADO.NET sẽ tiếp tục được cải tiến với các tính năng mới, giúp lập trình viên dễ dàng hơn trong việc kết nối và thao tác với cơ sở dữ liệu.

5.2. Tầm quan trọng của ADO.NET trong phát triển phần mềm

ADO.NET đóng vai trò quan trọng trong việc phát triển các ứng dụng phần mềm hiện đại. Việc nắm vững ADO.NET sẽ giúp lập trình viên nâng cao kỹ năng và khả năng phát triển ứng dụng.

10/07/2025

Trích đoạn nội dung tài liệu

ĀY BAN NHÂN DÂN THÀNH PHà Hâ CHÍ MINH TR¯àNG CAO ĐÂNG BÁCH KHOA NAM SÀI GÒN GIÁO TRÌNH MÔN HàC/MÔ ĐUN : L¾P TRÌNH C¡ SÞ DĀ LIÞU NGÀNH/NGHÀ : TIN HàC ĀNG DĀNG TRÌNH Đà : CAO ĐÀNG Ban hành kèm theo Quyết định số:459/QĐ-NSG, ngày 31 tháng 08 năm 2022 của Hiệu trưởng Trường Cao Đẳng Bách Khoa Nam Sài Gòn Thành phá Hß Chí Minh, năm 2022 TUYÊN Bà BÀN QUYÀN Tài liệu này thuộc loại sách giáo trình nên các nguãn thông tin có thể được phép dùng nguyên bản hoặc trích dùng cho các mÿc đích về đào tạo và tham khảo. Mọi mÿc đích khác mang tính lệch lạc hoặc sử dÿng với mÿc đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm. MĀC LĀC BÀI 1: TàNG QUAN VÀ ADO. Gißi thißu ADO.

Ki¿n trúc ADO. K¿t nái MS SQL Server bÁng SQL Server Data Provider. K¿t nái Oracle bÁng Oracle Data Provider. K¿t nái MS Access bÁng Access Data Provider.

7 BÀI 2: CÁC ĐàI T¯þNG TRONG MÔ HÌNH K¾T NàI ADO. Đái t°ÿng DataAdapter và DataSet. 25 BÀI 3: MÔ HÌNH MVC (MODEL – VIEW – CONTROLLER). Gißi thißu mô hình MVC.

Ki¿n trúc mô hình MVC. 44 BÀI 4: CRYSTAL REPORT VÀ LINKQ. Gißi thißu Crystal Report. Gißi thißu LINQ.

Ki¿n trúc LINQ. Sÿ dāng LINQ vßi Object. Sÿ dāng LINQ vßi ADO. 60 BÀI 5: ĐÓNG GÓI ĀNG DĀNG.

Cách tÁi th° vißn đóng gói. Cách thāc đóng gói. 62 BÀI 1: TàNG QUAN VÀ ADO.NET Māc tiêu: Trình bày được kiến trúc ADO.NET Sử dÿng kiến trúc ADO.NET kết nái được đến Hệ quản trị cơ sở dÿ liệu 1. Gißi thißu ADO.NET (ActiveX Data Objects.NET) là một thành phần trong .NET FRAMEWORK đảm nhÁn vai trò thao tác với CSDL.

Cung cấp các lớp đái tượng và hàm thư viện phÿc vÿ kết nái và xử lý dÿ liệu.NET là cầu nái giÿa ăng dÿng và CSDL.NET hỗ trợ việc kết nái và truy cÁp CSDL đái với nhiều hệ quản trị CSDL khác nhau như: SQL Server, Oracle, Access, … Hình 1.1 – Mô hình ADO.NET hoạt động theo 2 kiến trúc (kết nái và ngắt kết nái). o Mô hình ngắt kết nái: Cho phép lấy cả một cấu trúc dÿ liệu phăc tạp từ CSDL sau đó ngắt kết nái với CSDL và thāc hiện xử lý dÿ liệu. o Mô hình kết nái: Luôn phải duy trì kết nái trong suát quá trình xử lý dÿ liệu. - Các đặc trưng cāa ADO.

o Hỗ trợ lÁp trình: Cung cấp các lớp thao tác với CSDL giúp lÁp trình nhanh hơn và giảm lỗi; Cung cấp các công cÿ để thao tác với CSDL ngay trên phần Disigner giúp thao tác với CSDL dễ dàng hơn. o Khả năng mở rộng: Sử dÿng kiến trúc ngắt kết nái giúp giảm tải cho server, hỗ trợ nhiều người sử dÿng truy cÁp CSDL đãng thời tát hơn. o Khả năng tích hợp: ADO.NET có thể gửi dÿ liệu cho bất că loại ăng dÿng nào; o Hỗ trợ XML. Ki¿n trúc ADO.NET Kiến trúc cāa ADO.NET được mô tả như hình dưới, bao gãm hai thành phần chính: Thành phần truy cÁp nguãn dÿ liệu và thành phần lưu trÿ xử lý dÿ liệu.2 – Kiến trúc tổng quan của ADO.NET Thành phần thă nhất:.NET Framework Data Provider được thiết kế để thāc hiện các thao tác kết nái, gửi các lệnh xử lý đến CSDL (thành phần này còn được gọi với một tên khác là lớp kết nái – Connectectivity Layer).NET, có 4 đái tượng chính với các chăc năng cơ bản như sau: o Connection: giúp thāc hiện kết nái đến các CSDL o Command: giúp truy cÁp đến CSDL và thāc hiện các phát biểu SQL hay thā tÿc lưu trÿ sẵn (stored procedure) cāa CSDL o DataReader: dùng để đọc nhanh nguãn dÿ liệu, chỉ được duyệt tuần tā theo chiều tiến cāa các record DataAdapter: dùng để chuyển dÿ liệu truy vấn được cho các đái tượng lưu trÿ và xử lý (DataSet, DataTable).

DataAdapter chā yếu thāc hiện các thao tác như SELECT, INSERT, UPDATE, DELETE 1. K¿t nái MS SQL Server bÁng SQL Server Data Provider Các bước tạo kết nái tới CSDL SQL Server. Bước 1: Khai báo đái tượng SqlConnection SqlConnection conn = null; Bước 2: Tạo chuỗi kết nái tới CSDL SQL Server string connectionString = "Data Source=Server; Initial Catalog=QuanLyBanHang; UID=sa; PWD=123"; Bước 3: Tạo đái tượng Connection conn = new SqlConnection(connectionString); Bước 4: Mở kết nái qua đái tượng Connection conn. K¿t nái Oracle bÁng Oracle Data Provider Các bước tạo kết nái tới CSDL Oracle.

Bước 1: Khai báo đái tượng OracleConnection OralceConnection conn = null; Bước 2: Tạo chuỗi kết nái tới CSDL Oracle string connectionString = "Data Source=Server; Initial Catalog=QuanLyBanHang; UID=sa; PassWord=''"; Bước 3: Tạo đái tượng Connection conn = new OracleConnection(connectionString); Bước 4: Mở kết nái qua đái tượng Connection conn. K¿t nái MS Access bÁng Access Data Provider Các bước tạo kết nái tới CSDL Oracle. Bước 1: Khai báo đái tượng OracleConnection OralceConnection conn = null; Bước 2: Tạo chuỗi kết nái tới CSDL Access string connectionString = "Data Source=Server; Initial Catalog=QuanLyBanHang; UID=sa; PassWord=''"; Bước 3: Tạo đái tượng Connection conn = new OracleConnection(connectionString); Bước 4: Mở kết nái qua đái tượng Connection conn.Open(); BÀI TÀP THĀC HÀNH 1. Xây dāng lược đã cơ sở dÿ liệu Quản lý sinh viên Sinhvien (masv, hosv, tensv, ngaysinh, gioitinh, điachi, email, sdt, quequan, malop, tinhtrang, hinhanh) Giangvien (magv, hoten, makhoa, sdt) Monhoc (mamh, tenmh, sotiet, sotinchi, makhoa, socotdiemKT) Khoa (makhoa, tenkhoa,) Lop (malop, tenlop, makhoa, khoahoc) Phanmon (mapm, namhoc, hocky, malop, magv, mamh) Bangdiem(mapm, masv, hs11, hs12, hs21, hs22, TBKT, thi1, thi2, KTM1, KTM2) 2.

Thiết kế Cơ sở dÿ liệu trên phần mềm SQL Server và Microsoft Access create database QUANLYSINHVIEN Use QUANLYSINHVIEN ---khoa create table khoa( makhoa char(10) not null primary key, tenkhoa nvarchar(100) ) ---giangvien create table GIANGVIEN ( magv char (4)not null primary key, makhoa char (10), hotengv nvarchar (50), sdt varchar (15) ) alter table GIANGVIEN add constraint fk_giangvien_makhoa foreign key (makhoa) references khoa(makhoa) ---lop create table Lop( malop char(10) not null primary key, makhoa char(10), tenlop nvarchar(100), khoahoc varchar(10) not null ) alter table Lop add constraint fk_lop_makhoa foreign key (makhoa) references Khoa(makhoa) (Sinh viên tự thiết kế các table còn lại) 3. NhÁp dÿ liệu m¿u INSERT INTO Khoa (makhoa, tenkhoa) VALUES ('CNTT', N'Công nghệ thông tin'), ('KT', N'Kinh tế'), ('NN', N'Ngoại ngÿ') 4. Kết nái từ giao diện Windows Forms C# đến cơ sở dÿ liệu đã tạo trên SQL Server và Microsoft Access BÀI 2: CÁC ĐàI T¯þNG TRONG MÔ HÌNH K¾T NàI ADO.NET Māc tiêu: Trình bày được chăc năng cāa các đái tượng trong mô hình kết nái ADO.NET Sử dÿng các đái tượng trong ADO.NET để kết nái đến cơ sở dÿ liệu và thāc hiện các thao tác xử lý dÿ liệu 2. Giới thiệu đái tượng Connection Có nhiều lớp Connection trong ADO.NET – mỗi lớp tương ăng với một Data Provider – bao gãm SqlConnection, OracleConnection, OleDbConnection, OdbcConnection.

Mặc dù mỗi lớp có thể gãm nhÿng đặc tính riêng, nhưng các lớp này đều phải implement interface IdbConnection. Chăc năng đái tượng Connection: Tạo kết nái với CSDL. Thuộctính: ConnectionString: Thuộc tính chuỗi kết nái với CSDL (DataSource); Phương thăc: Open(): Phương thăc mở kết nái với CSDL; Close(): Phương thăc đóng kết nái.1 – Đái tượng Connection ❖ Quy trình k¿t nái đ¿n CSDL - Tạo đái tượng Connection và xác định chuỗi kết nái (Connection String) - Tạo đái tượng Command và xác định câu lệnh SQL - Mở đái tượng Connection (Open) - Thāc hiện câu lệnh SQL và xử lý kết quả (Execute) - Đóng đái tượng Connection (Close) 2. Khởi tạo đái tượng Đái t°ÿng SqlConnection Khai báo Namspace: Using System.SqlClient Cách 1: Khai báo và khởi tạo đái tượng kết nái Khai báo biến đái tượng kết nái: SqlConnection Conn; Khởi tạo biến đái tượng kết nái: Conn = new SqlConnection(); Cách 2: Vừa khai báo kết hợp khởi tạo biến đái tượng kết nái SqlConnection Conn = new SqlConnection(); Hoặc SqlConnection Conn = new SqlConnection(ConnStr); //ConnStr là biến lưu trÿ chuỗi kết nái Đái t°ÿng OracleConnection Khai báo Namspace: Using System.

OracleClient Khai báo biến đái tượng kết nái: OracleConnection Conn; Khởi tạo biến đái tượng kết nái: Conn = new OracleConnection(); Hoặc OracleConnection Conn = new OracleConnection(); OracleConnection Conn = new OracleConnection(ConnStr); Đái t°ÿng OleDbConnection Khai báo Namspace: Using System.OleDbClient Khai báo biến đái tượng kết nái: OleDbConnection Conn; Khởi tạo biến đái tượng kết nái: Conn = new OleDbConnection(); Hoặc OleDbConnection Conn = new OleDbConnection(); OleDbConnection Conn = new OleDbConnection(ConnStr); 2. Chuỗi kết nái cơ sở dÿ liệu Chuỗi kết nái cơ sở dÿ liệu (ConnectionString) xác định data source và các thông tin cần thiết để truy xuất data source, chẳng hạn như User ID và Password, … Ngoài nhÿng thông tin cơ bản này, Connection string còn có thể chăa các giá trị cho các trường dÿ liệu đặc trưng cho data provider. Ví dÿ, Connection string cho Ms Sql Server có thể chăa các giá trị để quy định Connection Timeout và Packet Size. Chußi k¿t nái c¢ sß dā lißu MS SQL Server Cách 1: @"Server=.\SQLEXPRESS;Database=QuanLyBanHang; Integrated Security=SSPI;" Cách 2: @"Server=.\SQLEXPRESS;Database= QuanLyBanHang; Trusted_Connection=True;= Cách 3: "Data Source=.\\SQLEXPRESS; Initial Catalog= QuanLyBanHang; Integrated Security=True;" Chußi k¿t nái c¢ sß dā lißu Oracle @"Server=.\ Oracle;Database=QuanLy BanHang; Integrated Security=SSPI;" @"Server=.\Oracle;Database= QuanLyBanHang; Trusted_Connection=True;= "Data Source=.\\Oracle; Initial Catalog= QuanLyBanHang; Integrated Security=True;" Chußi k¿t nái c¢ sß dā lißu Access - Chuỗi kết nái CSDL Access 97, 2000, 2002, 2003.0; Data Source=C:\\Database\\QuanLyBanHang.mdb; - Chuỗi kết nái CSDL Access 2007, 2010, 2013.0; Data Source=C:\\Database\\QuanLyBanHang.

Đóng và mở kết nái - Mở kết nái với CSDL bằng cách gọi phương thăc Open() cāa lớp Connection Conn.open(); hoặc Conn.open(ConnStr); - Đóng kết nái với CSDL bằng cách gọi phương thăc Close() cāa lớp Connection Conn. Connection Pooling - Pooling cho phép sử dÿng lại các connection để mang lại hiệu quả trong việc kết nái đến CSDL Mỗi Data Provider sẽ cài đặt connection pooling theo cách riêng Nếu kết nái thāc hiện đã có trong pool thì sẽ được sử dÿng lại Nếu kết nái thāc hiện chưa có trong pool thì sẽ được tạo mới - Hoạt động Connection Pooling cāa Data Provider for SQL Server Dāa trên thông tin cāa chuỗi kết nái, thuộc tính Pooling có giá trị là True hoặc False (mặc định là True) Nếu thuộc tính Pooling có giá trị là True thì có thể sử dÿng lại kết nái từ pool. Nếu thuộc tính Pooling có giá trị là False thì kết nái sẽ được tạo mới 2.1 Giới thiệu đái tượng Command Đái tượng Command trên .NET cho phép thi hành trāc tiếp nhÿng câu lệnh SQL, chẳng hạn như INSERT, SELECT, UPDATE và DELETE lên dÿ liệu nguãn để thêm, chọn, cÁp nhÁt và xóa dÿ liệu trên CSDL. Người dùng cũng có thể dùng đái tượng command để thi hành nhÿng stored procedure trong CSDL.

Đái tượng Command cho phép chọn kiểu tương tác mong muán thāc hiện với database. Ví dÿ, chúng ta có thể thāc hiện các lệnh select, insert, modify, và delete các dòng trong một table cāa database. Command là đái tượng dùng để thāc hiện các truy vấn SQL và các lệnh quản lý dÿ liệu trước khi gửi chúng đến đích. Command sử dÿng các Parameter cho phép gọi các thā tÿc nội tại (stored procedures) hoặc các truy vấn.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Giáo Trình Lập Trình Cơ Sở Dữ Liệu ADO.NET là một tài liệu quý giá dành cho những ai muốn nắm vững kiến thức về lập trình cơ sở dữ liệu trong môi trường .NET. Tài liệu này cung cấp cái nhìn tổng quan về ADO.NET, bao gồm các khái niệm cơ bản, cách kết nối với cơ sở dữ liệu, thực hiện các truy vấn và xử lý dữ liệu hiệu quả. Đặc biệt, nó giúp người đọc hiểu rõ hơn về cách tối ưu hóa hiệu suất ứng dụng khi làm việc với cơ sở dữ liệu.

Ngoài ra, để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo tài liệu Giáo trình hệ quản trị cơ sở dữ liệu ms sql server ngành công nghệ thông tin cao đẳng liên thông. Tài liệu này sẽ cung cấp thêm thông tin chi tiết về hệ quản trị cơ sở dữ liệu MS SQL Server, giúp bạn có cái nhìn sâu sắc hơn về cách thức hoạt động và quản lý dữ liệu trong các ứng dụng thực tế.

Hãy khám phá những tài liệu này để nâng cao kiến thức và kỹ năng lập trình cơ sở dữ liệu của bạn!