Bài giảng Lập trình trên môi trường Window, Lập trình trên môi trường Window, Kỹ thuật lập trình, Crystal report, Thiết kế báo cáo

20 11 0
Bài giảng Lập trình trên môi trường Window, Lập trình trên môi trường Window, Kỹ thuật lập trình, Crystal report, Thiết kế báo cáo

Đ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

DataAdapter chỉ thao tác với một nguồn dữ liệu qua một đối tượng connection đang kết nối, khi Connection chưa mở thì DataAdapter sẽ tự động mở kết nối khi cần và đóng lại.[r]

(1)

Chương 6:

CÁC ĐỐI TƯỢNG TRONG ADO.NET

Giảng Viên: ThS Dương Thành Phết

Email: phetcm@gmail.com – YahooID: phetcm Website: http://www.thayphet.net

(2)

NỘI DUNG

1.Đối tượng Connection 2.Đối tượng Command

3.Đối tượng DataReadder 4.Đối tượng Dataset

5.Đối tượng DataAdapter

(3)

 Vai trò Connection ADO.net tạo kết nối ứng dụng với CSDL

 Khi cthực kết nối cần xác định thông tin cho Connection thơng qua thuộc tính Connection String Tùy thuoc vào Data Provider

 Với SQLServer • Server name • Database name • User name

• Password

 Với Access

• Database name • User name

(4)

Thuộc tính

 ConnectionString: Chuỗi kết nối DataSource

 State: Tình trạng kết nối: Connecting (đang kêt

nối), Open (đã kêt nối), Broken (kết nối bị ngắt kết nối), Closed (kết nối đóng)

Phương thức

 Open(): Thiết lập kết nối đến DS

 Close(): Đóng kết nối với DS

(5)

Các bước tạo kết nối

 Bước 1: Khởi tạo đối tượng Connection với tham số connection string database tương ứng

 Bước 2: Thiết lập kết nối đến database phương thức Open

 Bước 3: Thực thao tác khai thác liệu (select, insert, delete, update) từ database

(6)

using System.Data.SqlClient;

SqlConnection cnn = new SqlConnection(); cnn.ConnectionString =

server=localhost; database=Northwind; uid=sa; pwd=sa"; cnn.Open(); //Mở kết nối

//xử lý q trình kết nối …

cnn.Close(); //Đóng két nối

1 ĐỐI TƯỢNG CONNECTION

Sử dụng tên miền: System.Data.SqlClient; Server: Chỉ định tên máy chứa Database Database: Chỉ định tên sở liệu

Uid: Tên tài khỏan đăng nhập SQLServer (nếu có) Pwd: Mật đăng nhập (nếu có)

(7)

using System.Data.SqlClient;

SqlConnection cnn = new SqlConnection();

cnn.ConnectionString = “Data Source=localhost;

Initial Catalog=Northwind; UserId=sa; Password=sa”

cnn.Open(); //Mở kết nối

//xử lý q trình kết nối …

cnn.Close(); //Đóng két nối

DataSource: Chỉ định tên máy chứa Database Initial Catalog: Chỉ định tên sở liệu

Userid: Tên tài khỏan đăng nhập SQLServer (nếu có) Password: Mật đăng nhập (nếu có)

(8)

using System.Data.OleDb;

OleDBConnection cnn = new OleDbSqlConnection();

cnn.ConnectionString = “Provider = Microsoft.Jet.OLEDB.4.0;

Data Source=QLHOCSINH.MDB"; cnn.Open();

//xử lý trình kết nối cnn.Close();

Tạo kết nối với MS Access

Đối với MS Access 2007/2010 Provider=Microsoft.ACE.OLEDB.12.0

(9)

Minh họa:

using System.Data.SqlClient;

SqlConnection cnn = new SqlConnection();

private void btLogin_Click(object sender, EventArgs e) {

String Tenmay = txtServername.Text; String TenDN = txtUsername.Text; String Matkhau = txtPassword.Text;

String TenCSDL = txtDatabasename.Text;

cnn.ConnectionString = "Server=" + Tenmay + "; Database=" + TenCSDL + " ; User Id=" + TenDN + "; Password= " + Matkhau;

try {

cnn.Open();

MessageBox.Show("Kết nối thành công", "Thông báo"); cnn.Close();

} catch {

MessageBox.Show("Kết nối thất bại", "Thông báo"); }

(10)

2 ĐỐI TƯỢNG COMMAND

 Quá trình tương tác với database cần phải biết hành động muốn xảy Điều thực đối tượng command

 Dùng đối tượng command để gửi câu lệnh SQL tới database

 Một đối tượng command dùng đối tượng connection để xác định database truy xuất

(11)

Thuộc tính:

 Connection:Kết nối để thực lệnh

 CommandText:Câu lệnh cần thực

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

Phương thức:

 ExecuteScalar(): Thực lệnh trả giá trị đơn

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

(12)

SqlConnection cnn = new SqlConnection();

cnn.ConnectionString = “Data Source=localhost;

Initial Catalog=QLsinhvien; User Id=sa; Password=sa”

cnn.Open(); //Mở kết nối

SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn;

cmd.CommandText =

“Select Count(*) From TableName”; int n = (int) cmd.ExecuteScalar();

cnn.Close();

2 ĐỐI TƯỢNG COMMAND

(13)

SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn;

String MaMH = txtMaMH.Text; String TenMH = txtTenMH.Text; int Sotiet = int.Parse(txtSotiet.Text);

cmd.CommandText = "Insert into Monhoc(MaMH,TenMH, Sotiet) values('" + MaMH + "',N'" + TenMH +"'," + Sotiet +")"; cmd.ExecuteNonQuery();

(14)

3 ĐỐI TƯỢNG DATAREADER

 Nhiều thao tác liệu lấy luồng liệu để đọc Đối tượng data Reader cho phép lấy kết câu lệnh SELECT từ đối tượng command

 Để tăng hiệu suất, liệu trả từ data reader luồng liệu fast forward-only có lợi mặt tốc độ

 Là đối tượng truy cập liệu trực tiếp sử dụng trỏ phí Server trì kết nối suốt trình đọc liệu

(15)

Các thuộc tính

 FieldCout: Số cột dịng hành DataReader

 IsClosed: Cho biết dataReader đóng

(16)

3 ĐỐI TƯỢNG DATAREADER

Các phương thức

 Close: Đóng DataReader

 GetFieldType: Trả kiểu liệu cột truyền vào

 GetName: Trả tên cột truyền vào

 GetValue: Trả trị cột truyền vào

 Read : Di chuyển đến dòng trả true dòng để di chuyển, ngược lại trả False

(17)

SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn;

cmd.CommandText = "Select * From Monhoc"; cmd.CommandType = CommandType.Text; SqlDataReader dr ;

dr = cmd.ExecuteReader(); lstMonhoc.Items.Clear(); while (dr.Read())

(18)

4 DATA ADAPTER

4.1 Giới thiệu

 Để lầy liệu từ nguồn liệu vầ cho ứng dụng, sử dụng đối tượng gọi DataAdapter Đối tượng cho phép ta lấy cấu trúc liệu bảng nguồn liệu

 DataAdapte gồm đối tượng command:

 SelectCommand: Cho phép lấy thông tin từ nguồn

 InsertCommand: Cho phép thêm liệu vào bảng

 UpdateCommand: Cho phép điều chỉnh liệu bảng

(19)

 Đôi cần làm việc chế độ read-only cần thay đổi liệu nguồn, cần lưu trữ tạm liệu nhớ để hạn chế truy xuất đến database Data adapter làm điều dễ dàng cách giúp quản lý liệu chế độ ngắt kết nối

(20)

4 DATA ADAPTER

4.2 Tạo DataAdapter

<Loai>DataAdapter <Tên> =

new <Loai>DataAdapter(Lệnh, biến connnection);

Với SQLSever:

sqlDataAdapterDataAdapter <Tên> =

new SQLDataAdapter(Lệnh, biến connection);

Ngày đăng: 09/03/2021, 02:34

Tài liệu cùng người dùng

Tài liệu liên quan