Slide Lập Trình Trên Môi Trường Windows Với ADO NET Phạm Minh Tuấn, 23 Trang

background image

LẬP TRÌNH TRÊN

MÔI TRƯỜNG WINDOWS

***

ADO.NET

Phạm Minh Tuấn

pmtuan@fit.hcmuns.edu.vn

background image

05/11/23

Khoa CNTT - ĐH KHTN

2

Nội dung trình bày

Giới thiệu

Connected Model

Disconnected Model

background image

05/11/23

Khoa CNTT - ĐH KHTN

3

Giới thiệu

ADO.NET là một tập các lớp thư viện được sử
dụng để truy xuất dữ liệu

Chiến lược truy xuất dữ liệu

Connected Model

Disconnected Model

Chương trình

CSDL, XML…

Thêm/xóa/sửa dữ liệu

Đọc dữ liệu

background image

05/11/23

Khoa CNTT - ĐH KHTN

4

Giới thiệu

Connected Model

Disconnected Model

Chương trình

Chương trình

background image

05/11/23

Khoa CNTT - ĐH KHTN

5

Giới thiệu

.NET Data Provider

Dùng để kết nối đến CSDL, thực hiện các câu
lệnh, và nhận kết quả trả về.

Hiện có 4 loại data provider chính

ADO.NET

ODBC

Application

OLE DB

Oracle

SQL Server

.NET Data Provider

background image

05/11/23

Khoa CNTT - ĐH KHTN

6

Giới thiệu

.NET Data Provider

Các thành phần của .NET Data Provider

.NET Data Provider

???Connection

???Command

???DataReader

???DataAdapter

SelectCommand

DeleteCommand

UpdateCommand

InsertCommand

Parameters

???Parameter

background image

05/11/23

Khoa CNTT - ĐH KHTN

7

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

background image

05/11/23

Khoa CNTT - ĐH KHTN

8

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

background image

05/11/23

Khoa CNTT - ĐH KHTN

9

Connected Model

Kết nối vào CSDL

Ví dụ: kết nối vào Access

OleDbConnection cnn =

new

OleDbConnection();

cnn.ConnectionString =

"Provider=Microsoft.Jet.OleDb.4.0;

Data Source=hocsinh.mdb";
cnn.Open();

//

Các lệnh cần thực hiện

cnn.Close();

background image

05/11/23

Khoa CNTT - ĐH KHTN

10

Connected Model

Thực hiện 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 sẽ thực hiện thao tác

CommandText

: xác định thao tác cần thực hiện

Parameters

: xác định các tham số lệnh

Phương thức quan trọng

ExecuteReader

: phù hợp lệnh Select trả ra 1 bảng dữ liệu

ExecuteScalar

: phù hợp lệnh Select trả ra 1 giá trị

ExecuteNonQuery

: phù hợp lệnh Insert, Delete, Update

background image

05/11/23

Khoa CNTT - ĐH KHTN

11

Connected Model

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

A','227

Nguyễn Văn

Cừ','11/12/2006',5,7)";

cmd.ExecuteNonQuery();

background image

05/11/23

Khoa CNTT - ĐH KHTN

12

Connected Model

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="Lê Văn A";

para=cmd.Parameters.Add("@Diachi",OleDbType.VarWChar);

para.Value="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();

background image

05/11/23

Khoa CNTT - ĐH KHTN

13

Connected Model

Thực hiện lệnh

Đọc dữ liệu từ CSDL

Dùng lệnh

ExecuteReader

hoặc

ExecuteScalar

Lớp XXXDataReader

Read

GetXXX

IsDBNull

BookID

BookName

Author

1

Book 1

Author 1

2

Book 2

Author 2

3

Book3

Author 3

background image

05/11/23

Khoa CNTT - ĐH KHTN

14

Connected Model

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))

Console.WriteLine(rd.

GetDateTime

(3));

}

background image

05/11/23

Khoa CNTT - ĐH KHTN

15

Disconnected Model

Data Source

DataSet

Ánh xạ

DataSet

DataTable

Columns

Rows

DataColumn

DataRow

Tables

Relations

DataRelation

background image

05/11/23

Khoa CNTT - ĐH KHTN

16

Disconnected Model

DataTable

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.

DataColumn

ColumnName

: tên cột.

DataType

: kiểu dữ liệu cột.

DataRow

RowState

: trạng thái của mẫu tin (Added, Modified,

Deleted, Unchanged…).

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.

background image

05/11/23

Khoa CNTT - ĐH KHTN

17

Disconnected Model

SelectCommand

UpdateCommand

InsertCommand

DeleteCommand

DataAdapter

Data Source

DataSet

-

- Fill

Fill

: dùng SelectCommand lấy dữ liệu từ Data Source

: dùng SelectCommand lấy dữ liệu từ Data Source

đổ vào DataSet.

đổ vào DataSet.

-

- Update

Update

: dùng InsertCommand, UpdateCommand và

: dùng InsertCommand, UpdateCommand và

DeleteCommand cập nhật dữ liệu trong DataSet vào

DeleteCommand cập nhật dữ liệu trong DataSet vào

Data Source.

Data Source.

background image

05/11/23

Khoa CNTT - ĐH KHTN

18

Disconnected Model

Thực hiện lệnh

Đọc dữ liệu từ CSDL

Xử lý dữ liệu

Cập nhật dữ liệu xuống CSDL

background image

05/11/23

Khoa CNTT - ĐH KHTN

19

Disconnected Model

Đọ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()
);

}

background image

05/11/23

Khoa CNTT - ĐH KHTN

20

Disconnected Model

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();

background image

05/11/23

Khoa CNTT - ĐH KHTN

21

Disconnected Model

Cập nhật dữ liệu xuống CSDL

OleDbCommandBuilder buider =

new

OleDbCommandBuilder(da);

da.Update(dsHocSinh,

"HocSinh");

background image

05/11/23

Khoa CNTT - ĐH KHTN

22

background image

05/11/23

Khoa CNTT - ĐH KHTN

23

Slide có sử dụng lại bài giảng về ADO.NET của
Thầy Nguyễn Minh Huy


Document Outline


Wyszukiwarka

Podobne podstrony:
Slide Lập Trình Trên Môi Trường Windows Với Windows Form Phạm Minh Tuấn, 34 Trang
Slide Lập Thẩm Định Dự Án Đầu Tư xây Dựng Pgs Ts Nguyễn Văn Hiệp
Slide Lập Trình Hợp Ngữ Nhiều Tác Giả, 109 Trang
ĐHĐL Giáo Trình Kỹ Thuật Lập Trình Nâng Cao (NXB Đà Lạt 2002) Trần Hoàng Thọ, 108 Trang
Mẫu Mô Tả Công Việc Và Các Tiêu Chuẩn Đánh Giá Một Lập Trình Viên Nguyễn Trọng Hòa
Slide Ngôn Ngữ Lập Trình Tính Toán Fortran Trần Thùy Dương, 71 Trang
Cơ Học Lý Thuyết (Tóm Tắt Lý Thuyết & Bài Tập Mẫu) Trịnh Anh Ngọc, 71 Trang
Công Cụ Hỗ Trợ Phần Mềm Theo Hướng Đối Tượng Nhiều Tác Giả, 57 Trang
Lập Trình Web Động Với PHP và MySQL Phần 1 Tống Phước Khải, 132 Trang
Nhập Môn Hệ Điều Hành Linux (NXB Hồ Chí Minh 2001) Trịnh Ngọc Minh, 38 Trang
Giáo Trình Bảo Trì Máy Tính Và Cài Đặt Phần Mềm Nhiều Tác Giả, 68 Trang
Slide kỹ Thuật Lập Trình Nguyễn Thủy Đoan Trang, 20 Trang
Bài Tập Lập Trình C Lương Trần Hy Hiền, 18 Trang
ĐHCT Giáo Trình Thực Hành Lập Trình Hệ Thống (NXB Cần Thơ 2008) Nguyễn Hứa Duy Khang, 39 Trang
Slide Đặc Tả Ngôn Ngữ Lập Trình Từ Vựng Cú Pháp Ts Ngyuyễn Hứa Phùng, 17 Trang
KC 01 01 Công Nghệ Cứng Hóa Các Thuật Toán Mật Mã (NXB Hà Nội 2004) Nguyễn Hồng Quang, 71 Trang
Slide Ngôn Ngữ Lập Trình C Nguyễn Đình Thuân, 98 Trang
Hướng Dẫn Lập Và Quản Lý Chi Phí Đầu Tư Xây Dựng Công Trình Bộ Xây Dựng, 46 Trang
Giáo Trình Lập Trình Pascal Căn Bản Nhiều Tác Giả, 90 Trang

więcej podobnych podstron