Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 8: Thủ tục nội tại
Số trang: 11
Loại file: pdf
Dung lượng: 252.32 KB
Lượt xem: 17
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 8: Thủ tục nội tại. Nội dung chính trong bài giảng này gồm có: Khái niệm, các thao tác với thủ tục nội tại, tham số bên trong thủ tục nội tại, một số vấn đề khác, giao tác. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 8: Thủ tục nội tại Bài 8: Thủ tục nội tại Khái niệm n Nội dung: Thủ tục nội tại: Khái niệm n Tập hợp các lệnh, cấu trúc điều khiển Các thao tác với thủ tục nội tại n Cho phép truyền các giá trị qua các tham số vào và trả về các giá trị qua tham số đầu ra Tham số bên trong thủ tục nội tại Một số vấn đề khác Giao tác 2/8/2018 Microsoft SQL Server 2005 1 2/8/2018 Microsoft SQL Server 2005 2 Các loại thủ tục nội tại Danh sách các thủ tục nội tại hệ thống n Thủ tục nội tại hệ thống: thực hiện các chức năng n Xem trong ngăn System Stored Procedure: quản trị CSDL thường dùng, được đặt trong CSDL Resource (CSDL chỉ để đọc và được ánh xạ qua các CSDL dưới dạng sys, ví dụ: sys.objects, sys.tables, …). Tên thủ tục nội tại hệ thống luôn bắt đầu với tiền tố sp_ n Thủ tục nội tại hệ thống mở rộng: thực hiện các chức năng quản trị mức cao hơn, cũng được lưu trong CSDL Resource, tên bắt đầu với tiền tố xp_ n Thủ tục nội tại do người dùng tự xây dựng 2/8/2018 Microsoft SQL Server 2005 3 2/8/2018 Microsoft SQL Server 2005 4 1 Các thao tác với thủ tục nội tại Tạo mới một thủ tục nội tại n Cú pháp tạo mới một thủ tục nội tại dạng đơn giản n Tạo mới một thủ tục nội tại Create Proc/Procedure Tên_thủ_tục as n Gọi thực hiện thủ tục nội tại [Declare Biến_cục_bộ] n Xóa thủ tục nội tại Các_lệnh n Thay đổi nội dung thủ tục nội tại Ví dụ 1: Thủ tục tìm số lượng xuất lớn nhất (trong một lần xuất) của các vật tư: Create proc SLmax As Declare @SLmax int Select @SLmax=max(SlXuat) from CTPXUAT Print @Slmax 2/8/2018 Microsoft SQL Server 2005 5 2/8/2018 Microsoft SQL Server 2005 6 Gọi thực hiện/Xóa thủ tục nội tại Thay đổi nội dung của thủ tục nội tại n Cú pháp: n Để thực hiện thủ tục nội tại, sử dụng cú pháp: Alter proc/procedure Tên_thủ_tục Exec Tên_thủ_tục as Ví dụ 2: [Declare Biến_cục_bộ] Exec Slmax Các_lệnh n Để xóa thủ tục nội tại, sử dụng cú pháp: Ví dụ 4: Drop proc/Procedure Tên_thủ_tục Alter proc SLmax Ví dụ 3: As Declare @SLmax int Drop proc Slmax Select @Slmax = max(SlXuat) from CTPXUAT Print 'So luong xuat lon nhat: ' + convert(char(6),@Slmax) à Cách tương đương: Xóa đi rồi tạo lại thủ tục mới 2/8/2018 Microsoft SQL Server 2005 7 2/8/2018 Microsoft SQL Server 2005 8 2 Ví dụ 5 Giải ví dụ 5 Create proc Vattuxuat_max Tạo thủ tục in ra tên vật tư có số lượng bán cao nhất trong tháng 01/2002? As declare @TenVT nvarchar(100),@SLmax int Select CTPXUAT.MaVTu,TenVTu,sum(SlXuat) as TongSLX into BangSoluongxuat From VATTU inner join CTPXUAT on VATTU.MaVTu=CTPXUAT.MaVTu inner join PXUAT on CTPXUAT.SoPX=PXUAT.SoPX Where convert(char(7),Ngayxuat,21)='2002-01' Group by CTPXUAT.MaVTu,TenVTu 2/8/2018 Microsoft SQL Server 2005 9 2/8/2018 Microsoft SQL Server 2005 10 Giải ví dụ 5 Lưu ý Select @TenVT=TenVTu,@SLmax=TongSLX n Các thao tác tạo mới, gọi thực hiện, xóa, thay đổi nội From BangSoluongxuat dung của thủ tục nội tại có thể tiến hành từ cửa sổ Where TongSLX = (select max(TongSLX) from Object Explorer BangSoluongxuat) Ví dụ 6: Print 'Vat tu duoc xuat nhieu nhat trong thang 01 nam 2002: ' + @TenVT Xóa thủ tục Slmax từ Print 'So luong xuat la: ' + convert(c ...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 8: Thủ tục nội tại Bài 8: Thủ tục nội tại Khái niệm n Nội dung: Thủ tục nội tại: Khái niệm n Tập hợp các lệnh, cấu trúc điều khiển Các thao tác với thủ tục nội tại n Cho phép truyền các giá trị qua các tham số vào và trả về các giá trị qua tham số đầu ra Tham số bên trong thủ tục nội tại Một số vấn đề khác Giao tác 2/8/2018 Microsoft SQL Server 2005 1 2/8/2018 Microsoft SQL Server 2005 2 Các loại thủ tục nội tại Danh sách các thủ tục nội tại hệ thống n Thủ tục nội tại hệ thống: thực hiện các chức năng n Xem trong ngăn System Stored Procedure: quản trị CSDL thường dùng, được đặt trong CSDL Resource (CSDL chỉ để đọc và được ánh xạ qua các CSDL dưới dạng sys, ví dụ: sys.objects, sys.tables, …). Tên thủ tục nội tại hệ thống luôn bắt đầu với tiền tố sp_ n Thủ tục nội tại hệ thống mở rộng: thực hiện các chức năng quản trị mức cao hơn, cũng được lưu trong CSDL Resource, tên bắt đầu với tiền tố xp_ n Thủ tục nội tại do người dùng tự xây dựng 2/8/2018 Microsoft SQL Server 2005 3 2/8/2018 Microsoft SQL Server 2005 4 1 Các thao tác với thủ tục nội tại Tạo mới một thủ tục nội tại n Cú pháp tạo mới một thủ tục nội tại dạng đơn giản n Tạo mới một thủ tục nội tại Create Proc/Procedure Tên_thủ_tục as n Gọi thực hiện thủ tục nội tại [Declare Biến_cục_bộ] n Xóa thủ tục nội tại Các_lệnh n Thay đổi nội dung thủ tục nội tại Ví dụ 1: Thủ tục tìm số lượng xuất lớn nhất (trong một lần xuất) của các vật tư: Create proc SLmax As Declare @SLmax int Select @SLmax=max(SlXuat) from CTPXUAT Print @Slmax 2/8/2018 Microsoft SQL Server 2005 5 2/8/2018 Microsoft SQL Server 2005 6 Gọi thực hiện/Xóa thủ tục nội tại Thay đổi nội dung của thủ tục nội tại n Cú pháp: n Để thực hiện thủ tục nội tại, sử dụng cú pháp: Alter proc/procedure Tên_thủ_tục Exec Tên_thủ_tục as Ví dụ 2: [Declare Biến_cục_bộ] Exec Slmax Các_lệnh n Để xóa thủ tục nội tại, sử dụng cú pháp: Ví dụ 4: Drop proc/Procedure Tên_thủ_tục Alter proc SLmax Ví dụ 3: As Declare @SLmax int Drop proc Slmax Select @Slmax = max(SlXuat) from CTPXUAT Print 'So luong xuat lon nhat: ' + convert(char(6),@Slmax) à Cách tương đương: Xóa đi rồi tạo lại thủ tục mới 2/8/2018 Microsoft SQL Server 2005 7 2/8/2018 Microsoft SQL Server 2005 8 2 Ví dụ 5 Giải ví dụ 5 Create proc Vattuxuat_max Tạo thủ tục in ra tên vật tư có số lượng bán cao nhất trong tháng 01/2002? As declare @TenVT nvarchar(100),@SLmax int Select CTPXUAT.MaVTu,TenVTu,sum(SlXuat) as TongSLX into BangSoluongxuat From VATTU inner join CTPXUAT on VATTU.MaVTu=CTPXUAT.MaVTu inner join PXUAT on CTPXUAT.SoPX=PXUAT.SoPX Where convert(char(7),Ngayxuat,21)='2002-01' Group by CTPXUAT.MaVTu,TenVTu 2/8/2018 Microsoft SQL Server 2005 9 2/8/2018 Microsoft SQL Server 2005 10 Giải ví dụ 5 Lưu ý Select @TenVT=TenVTu,@SLmax=TongSLX n Các thao tác tạo mới, gọi thực hiện, xóa, thay đổi nội From BangSoluongxuat dung của thủ tục nội tại có thể tiến hành từ cửa sổ Where TongSLX = (select max(TongSLX) from Object Explorer BangSoluongxuat) Ví dụ 6: Print 'Vat tu duoc xuat nhieu nhat trong thang 01 nam 2002: ' + @TenVT Xóa thủ tục Slmax từ Print 'So luong xuat la: ' + convert(c ...
Tìm kiếm theo từ khóa liên quan:
Hệ quản trị cơ sở dữ liệu Bài giảng Hệ quản trị cơ sở dữ liệu Database Management Systems Microsoft SQL Server Thủ tục nội tại Giao tácTài liệu liên quan:
-
Giáo án Tin học lớp 12 (Trọn bộ cả năm)
180 trang 270 0 0 -
Thực hiện truy vấn không gian với WebGIS
8 trang 253 0 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 248 0 0 -
69 trang 144 0 0
-
57 trang 90 0 0
-
34 trang 84 0 0
-
Bài giảng Khái niệm về hệ cơ sở dữ liệu: Bài 2 - Hệ quản trị cơ sở dữ liệu
13 trang 78 0 0 -
Giáo trình Hệ quản trị cơ sở dữ liệu - Trần Thiên Thành
130 trang 75 0 0 -
Phát triển Java 2.0: Phân tích dữ liệu lớn bằng MapReduce của Hadoop
12 trang 73 0 0 -
Lý thuyết, bài tập và bài giải hệ thống thông tin kế toán: Phần 1
198 trang 70 0 0