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

Bài giảng Phát triển web nâng cao - Bài 5: ADO.NET

30 6 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 30
Dung lượng 783,25 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mời các bạn tham khảo Bài giảng Phát triển web nâng cao - Bài 5: ADO.NET sau đây để nắm bắt được những kiến thức về khái niệm, các lớp và không gian tên cơ bản của ADO.NET, thao tác với dữ liệu kết nối – Connected, thao tác với dữ liệu không kết nối - Disconnected.

Trang 2

5.1 Khái niệm ADO.NET

• Khi phát triển các ứng dụng trên nền web thì công việc chủ yếu phải giải quyết là xử lý Cơ sở dữ liệu

• ADO.NET (Active Data Object) cho phép thao tác Cơ

sở dữ liệu :

– Các ứng dụng webform

– Các ứng dụng winform

Trang 4

Mục tiêu chính của ADO.NET là

• Cung cấp các lớp để thao tác CSDL trong cả hai môi trường là phi kết nối (Disconected data) và kết nối (Connected data)

• Tích hợp chặt chẽ với XML (Extensible Markup

Language)

• Tương tác với nhiều nguồn dữ liệu thông qua mô tả

dữ liệu chung

• Tối ưu truy cập nguồn dữ liệu (OLE DB & SQL server)

• Làm việc trên môi trường Internet

Trang 5

ADO vs ADO.NET

Trang 6

5.2 Các lớp và không gian tên cơ bản của

ADO.NET

• Lớp ADO.NET được tìm thấy trong namespace System.Data,

và được tích hợp với lớp XML được tìm thấy trong namespace

.NET Data Provider: Một tập hợp các thành phần bao gồm các đối tượng

– System.Data.SqlClient : Dùng cho cơ sở dữ liệu SQL

– System.Data.OleDb: Dùng cho cơ sở dữ liệu access

– System.Data.OracleClient: Dùng cho cơ sở dữ liệu Oracle

Trang 7

Kho chứa các bảng

Trang 8

• Open(): thiết lập kết nối đến DataSource

• Close(): đóng kết nối với DataSource

Connection

Trang 9

• Ý nghĩa: Thực hiện các câu lệnh SQL để thao tác với CSDL

• Thuộc tính:

• Connection: kết nối để thực hiện lệnh

• CommandText : câu lệnh cần thực hiện

• CommandType: loại câu lệnh ( Text , TableDirect, StoredProc)

• Phương thức:

• ExecuteScalar(): thực hiện câu lệnh và trả về giá trị đơn

• ExecuteNonQuery(): gọi các lệnh SQL, store, trả về số row bị tác động (Insert, Update, Delete…)

• ExecuteReader(): thực hiện lệnh và trả về DataReader

Connection Command

Trang 10

Command với Parameter

• Khái niệm: Câu lệnh truy vấn SQL nhận giá trị thông qua các tham số tại thời điểm thực thi

• Cách sử dụng:

– Tạo tham số trong câu lệnh SQL

– Khai báo Parameter với những thông tin chính:

Trang 11

Command với Parameter

• Tạo tham số trong câu

SqlParameter thamso = new SqlParameter();

thamso.ParameterName = "tham_so"; thamso.SqlDbType = SqlDbType.NChar; thamso.Direction =

Trang 12

• Read(): đọc một mẫu tin

• [i]: truy xuất đến cột i của mẫu tin được đọc

• Close(): đóng

Connection Command DataReader

Trang 13

Data Provider

• Tạo kết nối đến nguồn dữ liệu.

• Thực hiện các lệnh truy vấn SQL trên nguồn dữ liệu.

• Cung cấp thư viện xử lý cho 3 loại nguồn dữ liệu khác nhau (3 provider): SQL Server, OLE DB và ODBC.

• Mỗi provider được quản lý bởi một namespace, nằm trong namespace System.Data.

Trang 14

• *.AcceptChanges();

Trang 15

.DefaultView

Trang 16

• Là thành phần lưu trữ dữ liệu

• Đặc điểm:

– Không kết nối với nguồn dữ liệu.

– Không phân biệt dữ liệu thuộc nguồn nào (SQL Server, OLE DB, ODBC, …).

– Có thể lưu trữ dữ liệu từ nhiều bảng (Table), nhiều nguồn (Data Source) khác nhau.

– Dữ liệu trong DataSet được quản lý bởi các DataTable

• Dữ liệu được đưa vào bởi DataSet thành phần

DataAdapter của Net data provider

Trang 17

• Rows: danh sách các mẫu tin

• PrimaryKey: danh sách các cột là khóa chính

• Phương thức:

• NewRow(): tạo một mẫu tin mới

Trang 18

.Columns.[chỉ số]: Truy xuất một DataColumn

.Columns.[“Tên cột”]: Truy xuất một DataColumn

Trang 19

.Rows[chỉ số dòng][chỉ số cột]: truy xuất đến cột I

.Rows[chỉ số dòng][tên cột] : truy xuất đến cột I

– Delete(): đánh dấu xóa mẫu tin DataTable

Column1 Column2 … Column n

Row

Trang 20

5.3 Kết nối để thao tác với dữ liệu

• Khái niệm

• Lấy dữ liệu về

• Thao tác với dữ liệu

Trang 21

Khái niệm

• 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

Trang 22

Lấy dữ liệu về

b1 Tạo Connection đến CSDL

b2 Tạo một biến DataCommand gắn với biến

DataConnection đã mở

• b3 Tạo biến DataReader:

– Thi hành phương thức ExcuteReader()

– Đọc và trình bày dữ liệu

b.4 Đóng và giải phóng các biến đối tượng

Trang 23

Thao tác với dữ liệu

b1 Khai báo một biến đối tượng DataConnection, và mở kết

nối đến cơ sở dữ liệu

b2 Tạo một biến DataCommand gắn với biến DataConnection

đã mở

b3 Gán giá trị cho thuộc tính CommandType của biến đối

tượng DataCommand

b4 Gán câu lệnh truy vấn (insert, update, delete, gọi store

procedure…) cho thuộc tính CommandText của biến đối tượng DataCommand

b5 Thi hành phương thức ExcuteNonquery() của biến đối

tượng DataCommand

b6 Đóng và giải phóng các biến đối tượng nếu không cần

thiết

Trang 24

• Sửa 1 bản ghi trong CSDL

• Xóa 1 bản ghi trong CSDL

Trang 25

5.3 Thao tác với dữ liệu ( phi kết nối)

• Khái niệm

• Các bước

• Lấy dữ liệu về để thao tác

• Thực hiện thao tác trên CSDL

Trang 26

Khái niệm

• 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

Trang 27

4 Ngoài ra chúng ta còn sử dụng một số các đối tượng khác

như DataTable, DataRow…

Trang 28

Lấy dữ liệu về để thao tác

b1 Cần khai báo một biến đối tượng DataConnection, và

mở kết nối đến cơ sở dữ liệu ( Bước này có thể không

cần thiết )

b2 Tạo biến DataAdapter, Chỉ rõ nguồn dữ liệu cần lấy

gắn với một đối tượng DataConnection đã mở hoặc một xâu kết nối đến cơ sở dữ liệu.

b3 Tạo DataSet và thi hành phương thức Fill để điền dữ

liệu lấy về vào DataSet.

b4 Sử dụng tập hợp Tables của đối tượng DataSet để

làm việc với dữ liệu đã lấy về.

b5 Đóng hoặc giải phóng các đối tượng nếu không cần

thiết.

Trang 29

Thực hiện các thao tác trên cơ sở dữ liệu

b1 Khai báo một biến đối tượng DataConnection, và mở

kết nối đến cơ sở dữ liệu ( Bước này có thể không cần

thiết ).

b2 Khai báo và tạo đối tượng DataAdapter

b3 Tạo đối tượng CommandBuilder gắn với biến đối

Ngày đăng: 08/05/2021, 12:30

🧩 Sản phẩm bạn có thể quan tâm

w