Cách thêm, s a, xóa, tìm ử

Một phần của tài liệu LẬP TRÌNH WINDOWS 2(VB.NET) (Trang 23 - 37)

SQLDataReader

SqlCommand

 Quá trình tương tác v i CSDL c n ph i bi t hành đ ng nào ớ ầ ả ế ộ b n mu n x y ra. ạ ố ả

 Đi u này đề ược th c hi n b i đ i tự ệ ở ố ượng SqlCommand. Ta sẽ dùng đ i tố ượng SqlCommand đ g i m t câu l nh SQL t i ể ử ộ ệ ớ database.

 SqlCommand dùng m t đ i tộ ố ượng connection đ xác đ nh ể ị database nào sẽ được truy xu t. Ta có th dùng m t đ i ấ ể ộ ố tượng command riêng l đ th c thi l nh tr c ti p, ho c đ ẻ ể ự ệ ự ế ặ ể g n m t tham chi u c a đ i tắ ộ ế ủ ố ượng command cho m t ộ SqlDataAdapter.

 Th c hi n SqlCommand có th tr t p d li u ho c khôngự ệ ể ả ậ ữ ệ ặ

Command

 T o Commandạ

 Các thu c tính c a Commandộ ủ

T o Commandạ

Cú Pháp:

Dim <bi n Command> As New <lo i>Command()ế ạ

<bi n Command>.Connection = <bi n Connection>ế ế

<bi n Command>.CommandText = <l nh>ế ệ VD:

Dim command as new SqlCommand();

command.Connection = sqlConnection;

sqlCommand.CommandText = "select count(*) from SanPham";

Các thu c tính c a Commandộ

Tên Mô tả

CommandText Lệnh SQL, tên bảng hoặc tên thủ tục muốn thực hiện trên nguồn dữ liệu. (đọc ghi)

CommandType Giá trị cho biết nội dung CommandText là gì với các giá trị sau:

Text: (mặc định) một câu lệnh SQL Storeprocedure: tên một thủ tục nội

Connection Đối tượng Connection sử dụng cho Command

Parameters Tập hợp các tham số dung trong Command Transaction Giao tác mà trên đó Command đang thực

hiện

Th c hi n Commandự

ExecuteScalar

Ch c năng: Th c hi n l nh c a Command ự ệ ệ ủ và ch tr v giá ỉ ả ề tr c a c t đ u tiên và dòng đ u tiênị ủ ộ ầ ầ . Thường được dung khi mu n Commannd th c hi n các hàm tính toán th ng kê nh ố ự ệ ố ư Sum, AVG, Max, Min, Count, … trên ngu n d li u ngay lúc ồ ữ ệ th c thi.ự

Th c hi n Commandự

VD: Đ m s lế ố ượng nhà cung c p (NCC) trong b ng NhaCCấ Dim strconn As String

strconn = "Data Source=ADMINPC\SQLEXPRESS;Initial Catalog=CsdlSPJ;Integrated Security=True"

Dim conn As New SqlConnection(strconn) conn.Open()

Dim Command as new SqlCommand()

Command.CommandType = CommandType.Text;

Command.CommandText = "select count(*) from NCC";

Command.Connection = conn;

Dim soNCC=sqlCommand.ExecuteScalar();

Th c hi n Commandự

ExecuteReader

Ch c năng: Phương th c này tr v m t đ i tứ ả ề ộ ố ượng DataReader đ đ c d li u m i l n m t dòng v i phể ọ ữ ệ ỗ ầ ộ ớ ương th c Read(). DataReader đ c d li u tr c ti p t ngu n d ứ ọ ữ ệ ự ế ừ ồ ữ li u nên ph i duy trì k t n i cho đ n khi đ c xong.ệ ả ế ố ế ọ

Th c hi n Command (code- tìm ki m)ự ế

Cú pháp:

conn = New SqlConnection(strconn)

If conn.State = ConnectionState.Closed Then conn.Open()

End If

Dim command As New SqlCommand()

command.CommandType = CommandType.Text

command.CommandText = "select * from Duan where mada='" & txtTimkiem.Text & "'"

command.Connection = conn

Dim reader As SqlDataReader = command.ExecuteReader() If reader.Read() Then

txtMada.Text = reader.GetString(0) txtTenda.Text = reader.GetString(1) txtTP.Text = reader.GetString(2)

End If

Th c hi n Command, đ d li u vào listviewự ổ ữ ệ

conn = New SqlConnection(strconn) conn.Open()

Dim command As New SqlCommand()

command.CommandType = CommandType.Text command.CommandText = "Select * from duan"

command.Connection = conn

Dim reader As SqlDataReader = command.ExecuteReader() lvDuan.Items.Clear()

While reader.Read()

Dim lvi As ListViewItem = New ListViewItem(reader.GetString(0)) lvi.SubItems.Add(reader.GetString(1))

lvi.SubItems.Add(reader.GetString(2)) lvDuan.Items.Add(lvi)

End While

reader.Close()

Th c hi n Commandự

ExecuteNonquery

Ch c năng: Đ g i th c hi n các câu truy v n c p nh t ể ọ ự ệ ấ ậ ậ INSERT, UPDATE, DELETE,... hay th t c n i không tr v d ủ ụ ộ ả ề ữ li u ho c khi chúng ta không quan tâm đ n d li u tr v . ệ ặ ế ữ ệ ả ề Tuy không tr v d li u, nh ng các tham s đ u ra, tr v ả ề ữ ệ ư ố ầ ả ề đ u ch a d li u (n u có). V i các l nh INSERT, UPDATE, ề ứ ữ ệ ế ớ ệ DELETE, phương th c này tr v s dòng ch u tác đ ng c a ứ ả ề ố ị ộ ủ Command, ngượ ạc l i phương th c tr v -1ứ ả ề

Thêm d li u ữ ệ

conn = New SqlConnection(strconn)

If conn.State = ConnectionState.Closed Then conn.Open()

End If

Dim cmd As New SqlCommand()

cmd.CommandType = CommandType.Text cmd.CommandText = "insert into

duan(mada,ten,thpho) values('" & txtMada.Text &

"','" & txtTenda.Text & "','" & txtTP.Text & "')"

cmd.Connection = conn

Dim ret As Integer = cmd.ExecuteNonQuery If ret > 0 Then

MessageBox.Show("thêm ok") Else

MessageBox.Show("không ok") End If

S a d li u ử ữ ệ

conn = New SqlConnection(strconn)

If conn.State = ConnectionState.Closed Then conn.Open()

End If

Dim cmd As New SqlCommand()

cmd.CommandType = CommandType.Text

cmd.CommandText = "update duan set ten='" &

txtTenda.Text & "',thpho='" & txtTP.Text & "' where mada='" & txtMada.Text & "'"

cmd.Connection = conn

Dim ret As Integer = cmd.ExecuteNonQuery If ret > 0 Then

MessageBox.Show("thêm ok") Else

MessageBox.Show("không ok") End If

Xóa d li u ữ ệ

conn = New SqlConnection(strconn)

If conn.State = ConnectionState.Closed Then conn.Open()

End If

Dim cmd As New SqlCommand()

cmd.CommandType = CommandType.Text

cmd.CommandText = "delete from duan where mada='" & txtMada.Text & "'"

cmd.Connection = conn

Dim ret As Integer = cmd.ExecuteNonQuery If ret > 0 Then

MessageBox.Show("Đã xóa") Else

MessageBox.Show("Không thêể xóa") End If

Một phần của tài liệu LẬP TRÌNH WINDOWS 2(VB.NET) (Trang 23 - 37)

Tải bản đầy đủ (PPTX)

(37 trang)