Gọi thực thi Stored Procedure

9 1.4K 11
Gọi thực thi Stored Procedure

Đang tải... (xem toàn văn)

Thông tin tài liệu

Gọi thực thi Stored Procedure

Hướng dẫn thực hành NMCNPM HƯỚNG DẪN THỰC HÀNH TUẦN 9Chủ đề: Gọi thực thi Stored Procedure1. Mục đích- Kết nối và thực hiện các thao tác trên CSDL SQL Server.- Biết cách tham số hóa cho câu lệnh SQL.- Hiểu và vận dụng được cách thực thi các câu lệnh SQL thông qua Stored Procedure.o Stored Procedure không có kết quả trả về (parameter input)o Stored Procedure có kết quả trả về (parameter output)2. Cơ sở dữ liệu- Tạo CSDL SQL Server mới, tên CSDL là QLHocSinh. Tạo và thiết kế database mới gồm hai bảng như sau:HOCSINHSTT Tên trường Kiểu dữ liệu Ghi chú1 MaHS Varchar(10) PrimaryKey2 TenHS Nvarchar(50)3 NgaySinh Date/Time4 DiaChi Nvarchar(250)5 DTB Real/float6 MaLop Varchar(10) ForeignKey (tham chiếu đến Lop(MaLop)LOPSTT Tên trường Kiểu dữ liệu Ghi chú1 MaLop Varchar(10) PrimaryKey2 TenLop Nvarchar(100)3 SiSo int- Hoặc import CSDL từ Access đã được tạo trong tuần trước (CSDL QLHOCSINH.mdb).1 Hướng dẫn thực hành NMCNPM - Hướng dẫn cách import CSDL Access vào CSDL SQL Server:o Trước hết ta tạo một Database mới với tên QLHocSinho Từ Database QLHocSinh chọn Import Data…o Chọn Next, Sau đó chọn dữ liệu nguồn (dữ liệu nguồn ở đây là Access)2 Hướng dẫn thực hành NMCNPM o Chọn Next, Chọn đích import (đã được mặc định là SQL Server)o Chọn Next3 Hướng dẫn thực hành NMCNPM o Chọn Nexto Chọn các table muốn import vào CSDL SQL Server. Sau đó chọn Next.4 Hướng dẫn thực hành NMCNPM 3. Sử dụng lại ứng dụng trong tuần trước hoặc tạo ứng dụng mới:- Để kết nối với CSDL SQL Server, ta phải khai báo namespace như sau:using System.Data.SqlClient;- Khai báo các đối tượng sau để thực hiện các thao tác với CSDL SQL Server:SqlConnection connection;SqlDataAdapter adapter;SqlCommand command = new SqlCommand();- Chuỗi kết nối với CSDL SQL Server, gồm bốn thông tin: tên server, tên databse, userid và password."server=dungta; database=QLHocSinh; user id=sa; password=";4. Áp dụng kỹ thuật tham số hóa cho câu lệnh SQLa. Thực hiện thêm mới thông tin một học sinh- Trước đây, chúng ta thiết lập câu lệnh insert như sau:string sql = "INSERT INTO HOCSINH VALUES('"txtMaHS.Text.Trim() + "', '" + txtTenHS.Text.Trim() + "', '" + dtNgaySinh.Value.ToString() + "', '" + txtDiaChi.Text.Trim() + "', " + txtDiemTB.Text.Trim() + ", '" + cboLop.SelectedValue + "')";command = new SqlCommand(sql, connection);command.ExecuteNonQuery();- Để tham số hóa các tham số cho câu lệnh SQL ta thực hiện các bước sau:o Tham số hóa câu lệnh: @[tên tham số]o Tạo các parameters tương ứng cho command.o Đặt giá trị cho các parameter mỗi khi dùng command thực hiện câu lệnh.- Như vậy, chúng ta có thể thay thế đoạn code trên bằng đoạn code như sau:string sql="INSERT INTO HOCSINH VALUES(@Ma,@Ten,@Ns,@Dc,@Diem,@Lop)";5 Hướng dẫn thực hành NMCNPM command.Connection = connection;command.CommandText = sql;command.Parameters.AddWithValue("@Ma", txtMaHS.Text.Trim());command.Parameters.AddWithValue("@Ten", txtTenHS.Text.Trim());command.Parameters.AddWithValue("@Ns", dtNgaySinh.Value);command.Parameters.AddWithValue("@Dc", txtDiaChi.Text.Trim());command.Parameters.AddWithValue("@Diem", txtDiemTB.Text.Trim());command.Parameters.AddWithValue("@Lop", cboLop.SelectedValue.ToString());command.ExecuteNonQuery();b. Sửa thông tin của một học sinh.string sql = "UPDATE HOCSINH SET TenHS=@Ten, NgaySinh=@Ns," + "DiaChi=@Dc, DTB=@Diem, MaLop=@Lop Where MaHS=@Ma";command.Connection = connection;command.CommandText = sql;command.Parameters.AddWithValue("@Ma",txtMaHS.Text.Trim());command.Parameters.AddWithValue("@Ten",txtTenHS.Text.Trim());command.Parameters.AddWithValue("@Ns",dtNgaySinh.Value);command.Parameters.AddWithValue("@Dc",txtDiaChi.Text.Trim());command.Parameters.AddWithValue("@Diem",txtDiemTB.Text.Trim());command.Parameters.AddWithValue("@Lop",cboLop.SelectedValue.ToString());command.ExecuteNonQuery();5. Thực thi thông qua các Stored procedurea. Cách tạo Stored Procedure- Tạo mới Stored Procedure, chọn New Stored Procedure…6 Hướng dẫn thực hành NMCNPM - Tạo Stored Procedure thêm mới thông tin một học sinh như sau:7 Hướng dẫn thực hành NMCNPM b. Gọi thực thi Stored Procedure sp_InsertHocSinh thông qua chương trình:- Để thêm mới thông tin một học sinh, chúng ta gọi thực thi Stored Procedure sp_InsertHocSinh như sau:8Các tham số inputKiểm tra học sinh cần thêm tồn tại chưa? Hướng dẫn thực hành NMCNPM - Sau khi thực thi, Stored Procedure sẽ trả về kết quả thông qua tham số out (kết quả trả về trong trường hợp này là chuỗi thông báo lỗi, nếu không có lỗi trả về chuỗi rỗng).- Ví dụ khi chúng ta nhập vào một học sinh mới có mã trùng với một học sinh đã được lưu trong cơ sở dữ liệu, khi thực hiện insert thì chương trình sẽ thông báo lỗi: - Vậy chúng ta cần phải kiểm tra kết quả trả về và thông báo cho người dùng biết6. Bài tập:- Sinh viên tìm hiểu và cài đặt các chức năng còn lại của chương trình.- Lưu ý: Khi thêm mới một học sinh, giá trị ngày tháng được hệ thống hiểu mặt định là mm/dd/yyyy (nếu nhập theo định dạng dd/mm/yyyy, ví dụ: 25/10/1980 thì chương trình sẽ lỗi do không có tháng 25???). Sinh viên tìm hiểu và xử lý cho vấn đề trên. Gợi ý: Trong Stored Procedure dùng hàm Convert để xử lý.9 . sql;command.Parameters.AddWithValue("@Ma",txtMaHS.Text.Trim());command.Parameters.AddWithValue("@Ten",txtTenHS.Text.Trim());command.Parameters.AddWithValue("@Ns",dtNgaySinh.Value);command.Parameters.AddWithValue("@Dc",txtDiaChi.Text.Trim());command.Parameters.AddWithValue("@Diem",txtDiemTB.Text.Trim());command.Parameters.AddWithValue("@Lop",cboLop.SelectedValue.ToString());command.ExecuteNonQuery();5. Thực thi thông qua các Stored procedurea. Cách tạo Stored Procedure- Tạo mới Stored Procedure, chọn New Stored Procedure 6 Hướng dẫn thực hành. b. Gọi thực thi Stored Procedure sp_InsertHocSinh thông qua chương trình:- Để thêm mới thông tin một học sinh, chúng ta gọi thực thi Stored Procedure

Ngày đăng: 28/08/2012, 11:13

Hình ảnh liên quan

là QLHocSinh. Tạo và thiết kế database mới gồm hai bảng như sau: - Gọi thực thi Stored Procedure

l.

à QLHocSinh. Tạo và thiết kế database mới gồm hai bảng như sau: Xem tại trang 1 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan