SQL server 2000 khái niệm về thủ tục nội tại

28 881 0
SQL server 2000   khái niệm về thủ tục nội tại

Đ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

-1- SQL Server 2000 : Khái niệm thủ tục nội Giống ý nghĩa việc sử dụng thủ tục dùng chung ngôn ngữ lập trình khác, thủ tục nội Microsoft SQL Server dùng để tạo xử lý thường dùng bên ứng dụng nhằm để chia nhỏ xử lý theo mô hình thiết kế xử lý top-down, cách làm giúp chia nhỏ xử lý phức tạp thành xử lý nhỏ dần, đơn giản hóa xử lý phức tạp 1/- Thủ tục nội ? Thủ tục nội thật tập hợp chứa dòng lệnh, biến cấu trúc điều khiển bên ngôn ngữ Transaction-SQL dùng để thực hành động đó, tất nội dung thủ tục nội lưu trữ sở liệu Microsoft SQL Server Các nét đặc trưng thủ tục nội hoàn toàn giống thủ tục ngôn ngữ lập trình khác : tên thủ tục nội tại, tham số truyền giá trị vào tham số đón nhận giá trị trả Ngoài bên thủ tục nội bạn phép gọi thực thi thủ tục nội khác có trước Phạm vi hoạt động thủ tục nội người dùng tạo có tính cục bên sở liệu lưu trữ thủ tục Một nét riêng biệt thủ tục nội gọi thực môi trường Microsoft SQL Server Khi xây dựng giao diện hình ngôn ngữ lập trình khác nhau, bạn gọi thực thủ tục nội cách dễ dàng Ngoài thủ tục nội lưu trữ vật lý sở liệu Microsoft SQL Server, nên thủ tục nội thực thi nhanh nội dung bên thủ tục nội phân tích cú pháp lệnh chúng tạo Lần thủ tục nội gọi thực nội dung lệnh bên thủ tục nội biên dịch lưu lại nhớ, kể từ lần thủ tục nội thực thi nhanh (vì mã lệnh lưu lại nhớ) Đây lý mà nên sử dụng thủ tục nội Microsoft SQL Server để thực thi xử lý tính toán 2/- Các thủ tục nội hệ thống : Trong Microsoft SQL Server cung cấp cho số lớn thủ tục nội hệ thống dùng để thực xử lý việc quản trị sở liệu Một thủ tục nội hệ thống luôn bắt đầu chữ sp_ hầu hết tất thủ tục nội hệ thống lưu trữ bên sở liệu Master Việc làm quen sử dụng nhuần nhuyễn thủ tục hệ thống giúp bạn hiểu rõ thêm cách tổ chức cấu trúc bảng hệ thống bên Microsoft SQL Server Ngoài -2giúp bạn biết xử lý bí ẩn bên tiện ích Enterprise Manager sau bạn thực hành động chọn lựa tiện ích đồ họa Ví dụ : Bạn tạo người dùng có tên "TTTH", với mật "T3HNVC" cho phép truy cập vào sở liệu NorthWind Microsoft SQL Server thủ tục hệ thống sp_addlogin sau : Các liên quan đến thủ tục nội hệ thống hướng dẫn bạn thực việc triển khai sở liệu Microsoft SQL Server Do không đề cập đến thủ tục nội hệ thống Microsoft SQL Server mà trình bày cách thức tạo thủ tục người dùng định nghĩa để thực xử lý riêng biệt cho ứng dụng bạn Trong kế tiếp, đề cập đến cụm từ thủ tục nội xem nói đến thủ tục nội người dùng định nghĩa 3/- Các lợi ích sử dụng thủ tục nội : Bạn nên xem xét thật kỹ lợi ích sử dụng thủ tục nội mô tả bên để áp dụng vào trường hợp thực tế xây dựng ứng dụng theo mô hình khách chủ • Tốc độ xử lý thủ tục nội nhanh thân nội dung thủ tục nội lưu trữ thực máy chủ Hơn nữa, liệu lưu trữ máy chủ nên không cần thời gian để truyền liệu qua hệ thống mạng cho xử lý bên thủ tục nội xử lý liệu lưu trữ vị trí vật lý máy chủ • Việc tổ chức phân chia xử lý thành hai nơi khác : máy chủ máy trạm giúp bạn làm giảm thời gian xây dựng ứng dụng Bởi thân thủ tục nội Microsoft SQL Server gọi thực thi nhiều lần hình khác ngôn ngữ lập trình khác : Visual Basic, C++, Delphi, … • Giống lợi ích sử dụng đối tượng bảng ảo (View), bạn sử dụng thủ tục nội để phân cấp quyền hạn (security) cho người sử dụng với hành động cập nhật liệu : thêm, sửa, xóa liệu xem có quyền xem nội dung báo cáo -3- SQL Server 2000 : Tham số bên thủ tục nội Thủ tục nội hữu ích mô hình khách chủ, trở nên hiệu bạn biết cách sử dụng tham số kèm với Với tham số này, bạn truyền vào giá trị cần thiết cho xử lý bên thủ tục nội Bên vài hướng dẫn mà bạn cần ghi nhớ sử dụng tham số thủ tục nội : • Bạn định nghĩa nhiều tham số có bên thủ tục nội • Tên tham số mà bạn định nghĩa có phạm vi cục bên thủ tục nội Chúng tham số hình thức • Giống tên tham số ngôn ngữ lập trình khác, bạn đặt tên tham số thủ tục nội cách gợi nhớ • Một thủ tục phép có tối đa 1024 tham số 1/- Tham số đầu vào : Tham số đầu vào loại tham số cho phép bạn truyền vào giá trị cho xử lý bên thủ tục nội Các giá trị thật cần thiết cho hành động tính toán bên thủ tục nội Cú pháp : Trong : • Tên tham số : tên tham số thủ tục phải thủ tục nên đặt tên tham số cách gợi nhớ • Kiểu liệu : kiểu liệu tham số quy định loại liệu tương ứng truyền vào cho thủ tục -4• Giá trị : giá trị mặc định gán vào tham số tham số không nhận giá trị thủ tục gọi thực Ví dụ : Để xây dựng thủ tục nội tính tổng giá trị phiếu xuất vật tư cần có tham số vào số phiếu xuất với kiểu liệu chuỗi Bạn thực lệnh CREATE PROCEDURE có tham số vào sau : Gọi thực thủ tục truyền vào giá trị cho tham số phiếu xuất "X001" để tính tổng giá trị phiếu xuất "X001" Hoặc định tường minh tên tham số giá trị lúc gọi thủ tục Kết trả : Ví dụ : Để xây dựng thủ tục nội tính số lượng đặt hàng vật tư bên đơn đặt hàng có hai tham số vào số đặt hàng mã vật tư có kiểu liệu chuỗi Bạn thực lệnh CREATE PROCEDURE có hai tham số vào sau : -5- Gọi thực thủ tục để tính số lượng đặt hàng vật tư "DD02" đơn đặt hàng "D001" Hoặc Hoặc Kết trả : Nhận xét : -6Trong ví dụ trên, có cách gọi thực thủ tục hoàn toàn khác : • Với cách gọi thứ thứ tự giá trị tham số mà bạn truyền vào cho thủ tục bắt buộc phải với thứ tự tham số hình thức định nghĩa lệnh tạo thủ tục • Với cách gọi thứ hai thứ ba định tường minh tên tham số hình thức định nghĩa lệnh tạo thủ tục để truyền vào giá trị mong muốn thứ tự tham số không quan trọng 2/- Tham số đầu : Trong ví dụ bạn thấy rõ ý nghĩa sử dụng tham số đầu vào, nhiên thực tế bạn mong muốn đón nhận giá trị trả từ xử lý bên thủ tục nội thông qua tham số Khái niệm gọi tham số đầu ra, tham số mà giá trị tính toán từ bên thủ tục nội giá trị giữ nguyên sau thoát khỏi thủ tục Khái niệm hoàn toàn giống khái niệm tham số truyền vào theo địa (by Reference) số ngôn ngữ lập trình : Pascal, Visual Basic Cú pháp : Trong : • Từ khóa OUTPUT : dùng để định loại tham số tham số đầu Ví dụ : Sửa đổi lại thủ tục nội có hai tham số vào số đặt hàng mã vật tư có kiểu liệu chuỗi, trả số lượng đặt hàng vật tư tương ứng bên đơn đặt hàng thông qua tham số Bạn thực lệnh ALTER PROCEDURE có hai tham số vào tham số sau :,/p> -7- Gọi thực thủ tục : Kết trả : Nhận xét : Trong ví dụ bạn bắt buộc phải khai báo thêm biến cục @nSLdathang bên thủ tục dùng đề đón nhận giá trị trả tham số @nSLdat Từ khóa OUTPUT bắt buộc phải sử dụng hai nơi sử dụng loại tham số đầu (lúc định nghĩa tham số lúc gọi thực thủ tục nội tại) Tên biến cục bên thủ tục tên tham số hình thức lúc định nghĩa thủ tục phép trùng tên nhau, nhiên ví dụ cố tình đặt tên khác để giúp cho bạn dễ dàng phân biệt : biến cục @nSldathang tham số hình thức @nSLdat -8- SQL Server 2000 : Các hành động với thủ tục nội Giống đối tượng khác Microsoft SQL Server trình bày trước đây, bạn có hai cách để tạo thủ tục nội Các bước bên hướng dẫn bạn cách thức tạo thủ tục nội tiện ích Enterprise Manager 1/- Tạo thủ tục nội : Giống đối tượng khác Microsoft SQL Server trình bày trước đây, bạn có hai cách để tạo thủ tục nội Các bước bên hướng dẫn bạn cách thức tạo thủ tục nội tiện ích Enterprise Manager Bước : Khởi động tiện ích Enterprise Manager Chọn chức New Stored Procedure … thực đơn tắt sau nhấn chuột phải đối tượng Stored Procedures để tạo thủ tục nội đơn giản Bước : Trong hình định nghĩa thủ tục nội mới, định tên thủ tục nội câu lệnh cần thiết bên nội dung thủ tục nội dùng để xử lý, tính toán theo -9một yêu cầu cụ thể Nhấn vào nút Check Syntax để hệ thống kiểm tra cú pháp lệnh bên thủ tục nội có hợp lệ hay không ? Sau nhấn nút OK để lưu lại nội dung thủ tục nội vừa tạo Nhận xét : Trong hình minh họa bên phần tên thủ tục phần nội dung thủ tục ngăn cách từ khóa AS Xử lý bên thủ tục dùng để tính tên vật tư kèm với số lượng với doanh số bán cao Ngoài bạn tạo thủ tục nội lệnh CREATE PROCEDURE tiện ích Query Analyzer Cú pháp sau : Cú pháp : • Tên thủ tục : tên thủ tục nội tạo mới, tên thủ tục nội phải sở liệu • Biến cục : biến cục sử dụng tính toán tạm thời bên thủ tục, biến có phạm vi cục bên thủ tục nội - 10 • Các lệnh : lệnh bên thủ tục nội dùng để xử lý tính toán theo yêu cầu Ví dụ : Để tạo thủ tục tính vật tư có doanh số bán cao tháng 01/2002 Bạn thực câu lệnh CREATE PROCEDURE sau : Nhận xét : Trong ví dụ trên, có sử dụng hai biến cục dùng để lưu trữ tên vật tư có số lượng bán nhiều tháng 01/2002 sau dùng để hiển thị cuối thủ tục 2/- Gọi thực thủ tục nội : Bạn gọi thực thủ tục nội lệnh EXECUTE tiện ích Query Analyzer Cú pháp bên mô tả việc gọi thực thủ tục nội đơn giản, tham số gởi vào đón nhận giá trị trả Cú pháp : - 14 Mục đích thủ tục dùng để mã hóa mật người sử dụng chương trình lưu vào cột mật bảng người dùng (NGUOIDUNG) Nội dung thủ tục sau : Gọi thực thủ tục Kết trả Sau mã hóa nội dung thủ tục chức WITH ENCRYPTION, bạn hoàn toàn cách để xem lại nội dung lệnh bên thủ tục Tuy nhiên gọi thực thủ tục nội mã hóa bình thường thủ tục khác chưa mã hóa Có thể xem nội dung lệnh bên thủ tục nội chưa mã hóa thủ tục nội hệ thống sp_helptext Theo ví dụ bạn thực lệnh : - 15 Khi hệ thống thông báo hiển thị nội dung thủ tục thủ tục mã hóa 2/- Biên dịch thủ tục : Cú pháp : Ví dụ : Cú pháp : 3/- Thủ tục lồng : Bên thủ tục nội bạn gọi thực thủ tục nội khác Cấp độ lồng tối đa thủ tục 32 cấp Thủ tục gọi thủ tục cấp 1, thủ tục gọi thực cấp … bạn sử dụng biến hệ thống @@NESTLEVEL để biết cấp độ lồng hành thủ tục nội Tuy nhiên bên thủ tục bạn gọi thực nhiều thủ tục khác số lần gọi thực thủ tục khác không giới hạn Ví dụ : - 16 Để xây dựng thủ tục tính số lượng đặt hàng, tổng số lượng nhập hàng vật tư liên quan cho số đơn đặt hàng định Bạn gọi thực lại thủ tục spud_TinhSLDat tạo ví dụ trước bên nội dung thủ tục Gọi thực thủ tục Kết trả 4/- Sử dụng lệnh RETURN thủ tục : - 17 Thông thường, bạn sử dụng lệnh RETURN dùng để thoát khỏi thủ tục trường hợp liệu không hợp lệ Ngoài lệnh RETURN cho phép bạn trả số nguyên nơi gọi thực thủ tục Khi thủ tục trả giá trị số nguyên, khái niệm giúp cho tính thủ tục trở thành hàm (có trả giá trị) Mặc định lệnh RETURN giá trị định thủ tục trả giá trị không (0) Phần lớn thủ tục hệ thống biến hệ thống trả giá trị thực thành công, trả giá trị khác không dùng để định có lỗi xảy thực thủ tục Cú pháp : Khi bên thủ tục nội có sử dụng lệnh RETURN thông thường bạn phải sử dụng biến cục để đón nhận giá trị trả thủ tục Khi cú pháp lệnh gọi thực thủ tục phải bổ sung sau : Trong : • Biến : biến cục định nghĩa để đón nhận giá trị trả thủ tục có sử dụng lệnh RETURN Ví dụ : Để xây dựng thủ tục nội tính tổng số lượng đặt hàng vật tư nhà cung cấp định, bạn cần phải kiểm tra xem giá trị mã vật tư mã nhà cung cấp mà người dùng truyền vào thủ tục có hay không ? Quy định thủ tục trả mã vật tư không tồn tại, trả mã nhà cung cấp không tồn SQL Server 2000 : Một số vấn đề khác thủ tục nội – Phần Để tính vật tư có doanh thu bán cao năm tháng bất kỳ, bạn tạo bảng tạm để tính tổng thành tiền bán vật tư, sau xếp liệu bảng tạm theo thứ tự giảm dần cột tổng thành tiền - 18 - 5/- Sử dụng bảng tạm thủ tục : Đôi việc tính toán bên thủ tục vô phức tạp mà vào liệu có bên bảng, bạn tính được, thông thường bạn tạo bảng ảo (view) trước bảng tạm trung gian bên thủ tục để có liệu mong muốn cho tính toán phức tạp Để tạo bảng tạm bên thủ tục nội tại, bạn sử dụng lệnh SELECT INTO với cú pháp mô tả bên : Cú pháp : Trong : • Tên bảng tạm : tên bảng tạm tạp lập có cấu trúc liệu từ kết truy vấn chọn lựa sau • Tên bảng liệu : tên bảng chứa liệu nguồn Bạn định ký tự dấu thăng (#) ký tự hai dấu thăng (##) phía trước tên bảng tạm tạo câu lệnh SELECT INTO dùng để định việc tạo bảng tạm cục (#) bảng tạm toàn cục (##) Thông thường, bạn cần sử dụng bảng tạm cục bên thủ tục bạn nên xóa bảng tạm cục tạo lệnh DROP TABLE trước kết thúc thủ tục Ví dụ : Để tính vật tư có doanh thu bán cao năm tháng bất kỳ, bạn tạo bảng tạm để tính tổng thành tiền bán vật tư, sau xếp liệu bảng tạm theo thứ tự giảm dần cột tổng thành tiền Vật tư bảng tạm vật tư có doanh thu bán cao - 19 - Gọi thực thủ tục : Kết trả : - 20 - 6/- Tham số kiểu cursor bên thủ tục : Trong trường hợp cần khai báo tham số kiểu cursor thủ tục nội tại, bạn cần ghi nhớ điều sau : • Tham số kiểu cursor thường loại tham số trả giá trị danh sách dòng liệu theo điều kiện chọn lọc • Các hành động liên quan sử dụng biến có kiểu cursor chia làm phần : bên thủ tục bên thủ tục Các hành động bên thủ tục gồm việc : định nghĩa liệu cho biến kiểu cursor mở cursor Hai hành động bước bước bước cần thực sử dụng biến có kiểu liệu cursor Các hành động bên thủ tục gồm việc : đọc dòng liệu bên cursor sau đóng cursor lại Hai hành động bước bước bước cần thực sử dụng biến có kiểu liệu cursor Tuy nhiên không đảm bảo liệu bên cursor lúc định nghĩa bên thủ tục luôn có, bạn chủ động quy định giá trị trả thủ tục có sử dụng kiểu cursor để định biến cursor có liệu không Ví dụ : Xây dựng thủ tục trả danh sách mã vật tư bán nhiều năm tháng Bạn tạo thủ tục có tham số kiểu liệu cursor chứa danh sách vật tư bán nhiều - 21 - Sau gọi thực thủ tục để đón nhận danh sách mã vật tư bán nhiều năm tháng 01 năm 2002 - 22 - 7/- Thủ tục cập nhật bảng liệu : Thông thường bạn sử dụng thủ tục để tính toán liệu, bạn sử dụng thủ tục để cập nhật liệu Các thủ tục dạng gọi thực truyền vào giá trị cho tham số từ bên môi trường khác (màn hình Visual Basic, Visual Fox) Query Analyzer Ví dụ : Xây dựng thủ tục thêm liệu vào bảng VATTU với tên spud_VATTU_Them gồm có tham số vào giá trị thêm cho cột bảng VATTU : mã vật tư, tên vật tư, đơn vị tính phần trăm Trong cần kiểm tra ràng buộc liệu phải hợp lệ trước thực lệnh INSERT INTO để thêm liệu vào bảng VATTU • Mã vật tư phải • Tỷ lệ phần trăm phải nằm miền giá trị từ đến 100 Bạn thực lệnh CREATE PROCEDURE sau : - 23 - Giả sử liệu bảng VATTU sau : - 24 - Lần lượt gọi thực thủ tục môi trường Query Analyzer để thêm liệu vào bảng VATTU Khi hệ thống xuất thông báo lỗi (mã vật tư có) mà bạn biện luận bên thủ tục Hoặc thực : Khi hệ thống xuất bảng thông báo lỗi (tỷ lệ phần trăm không đúng) mà bạn biện luận bên thủ tục Cuối thực : Khi thủ tục không thông báo lỗi lưu lại liệu vào bảng VATTU ý bạn - 25 Qua ví dụ trên, bạn hiểu thêm tính thủ tục cập nhật liệu, tương tự bạn xây dựng thủ tục sửa đổi hủy bỏ liệu bảng liệu thông qua thủ tục nội 8/- Thủ tục hiển thị liệu : Ngoài thủ tục có thêm tính khác nữa, hiển thị liệu nguồn cho báo cáo Đối với báo cáo, bạn lấy liệu từ nhiều nguồn khác : • Đối tượng bảng liệu bảng ảo (view) • Câu lệnh SELECT trực tiếp • Đối tượng thủ tục nội Khi lấy liệu nguồn cho báo cáo bạn nên chọn đối tượng thủ tục nội Bởi bên thủ tục phép chứa đựng cấu trúc điều khiển, biến cục để tính toán tạm thời liệu xếp liệu nguồn cho loại báo cáo tính toán hiển thị liệu phức tạp Ví dụ : Xây dựng thủ tục hiển thị liệu cho báo cáo đơn đặt hàng Các thông tin báo cáo gồm cột bảng liệu DONDH, CTDONDH VATTU, NHACC Thủ tục có tham số vào số đặt hàng dùng để lọc liệu báo cáo theo số đặt hàng gởi vào, nhiên gọi thủ tục mà không truyền vào xem hiển thị tất số đặt hàng có bảng DONDH Bạn thực lệnh CREATE PROCEDURE sau : - 26 - Lần lượt gọi thực thủ tục môi trường Query Analyzer để kiểm tra tính đắn cua thủ tục tạo Hoặc Khi tùy vào số đặt hàng có truyền vào thủ tục hay không mà kết thủ tục trả nhiều dòng liệu có bảng DONDH bảng liên quan - 27 - Gọi thực thủ tục : Kết trả : Nhận xét thấy ví dụ trên, bạn định nghĩa biến cục tên @nKetqua có kiểu liệu số nguyên (INT) dùng để đón nhận giá trị trả thủ tục, sau - 28 vào giá trị biến cục để biện luận trường hợp liệu truyền vào không hợp lệ hợp lệ [...]... thủ tục nội tại, các dòng lệnh phía sau lệnh RETURN sẽ không được thực hiện sau khi thủ tục thực hiện lệnh RETURN SQL Server 2000 : Một số vấn đề khác trong thủ tục nội tại – Phần 1 Một số vấn đề khác trong thủ tục nội tại như là mã hóa nội dung của thủ tục nội tại, gọi thực hiện các thủ tục nội tại lồng nhau, các trường hợp cần thiết phải sử dụng lệnh RETURN bên trong thủ tục 1/- Mã hóa nội dung thủ. .. 4/- Thay đổi nội dung của thủ tục nội tại : Đôi khi nội dung của các thủ tục nội tại cần phải thay đổi lại để cho các hành động bên trong thủ tục nội tại thực hiện được đúng đắn theo các yêu cầu mới Bạn có hai cách thực hiện việc thay đổi nội dung bên trong của thủ tục nội tại : - 12 • Hoặc là dùng lệnh xóa bỏ thủ tục nội tại cũ và tạo lại thủ tục nội tại mới với nội dung được thay đổi mới phù hợp... hóa bằng thủ tục nội tại hệ thống sp_helptext Theo ví dụ trên nếu bạn thực hiện lệnh : - 15 Khi đó hệ thống sẽ thông báo không thể hiển thị nội dung của thủ tục vì thủ tục này đã được mã hóa 2/- Biên dịch thủ tục : Cú pháp : Ví dụ : Cú pháp : 3/- Thủ tục lồng nhau : Bên trong một thủ tục nội tại bạn có thể gọi thực hiện các thủ tục nội tại khác Cấp độ lồng tối đa của các thủ tục là 32 cấp Thủ tục ngoài... (NGUOIDUNG) Nội dung của thủ tục này như sau : Gọi thực hiện thủ tục Kết quả trả về Sau khi đã mã hóa nội dung thủ tục bằng chức năng WITH ENCRYPTION, bạn hoàn toàn không có cách nào để xem lại nội dung của các lệnh bên trong thủ tục Tuy nhiên các gọi thực hiện thủ tục nội tại đã được mã hóa vẫn bình thường như các thủ tục khác chưa mã hóa Có thể xem nội dung của các lệnh bên trong một thủ tục nội tại chưa... lại thủ tục spud_TinhSLDat đã tạo ra trong ví dụ trước bên trong nội dung thủ tục mới Gọi thực hiện thủ tục Kết quả trả về 4/- Sử dụng lệnh RETURN trong thủ tục : - 17 Thông thường, bạn sẽ sử dụng lệnh RETURN dùng để thoát ra khỏi thủ tục trong các trường hợp dữ liệu không hợp lệ Ngoài ra lệnh RETURN cũng cho phép bạn trả về một số nguyên tại nơi đã gọi thực hiện thủ tục Khi đó thủ tục sẽ trả về giá... nội dung của thủ tục sau khi đã xóa Cú pháp lệnh DROP PROCEDURE bên dưới cho phép bạn có thể hủy bỏ một thủ tục nội tại Cú pháp : Trong đó : • Tên thủ tục : tên thủ tục nội tại đã được tạo trước đó mà bạn muốn hủy bỏ khi không còn sử dụng nữa Ví dụ : Để xóa thủ tục spud_MaxSLVattu_200201 đã được tạo ra trong ví dụ trước đó, bạn thực hiện lệnh DROP PROCEDURE như sau : 4/- Thay đổi nội dung của thủ tục. .. nguyên, khái niệm này giúp cho tính năng của thủ tục trở thành một hàm (có trả về giá trị) Mặc định lệnh RETURN không có giá trị chỉ định thì thủ tục sẽ trả về giá trị là không (0) Phần lớn các thủ tục hệ thống hoặc các biến hệ thống sẽ trả về giá trị 0 khi thực hiện thành công, trả về giá trị khác không dùng để chỉ định có lỗi xảy ra khi thực hiện thủ tục Cú pháp : Khi bên trong một thủ tục nội tại có...- 11 Trong đó : • Tên thủ tục : tên thủ tục nội tại đã được tạo trước đó mà bạn muốn gọi thực thi Ví dụ : Để thực hiện thủ tục spud_MaxSLVattu_200201 đã được tạo ra trong ví dụ trước đó Bạn thực hiện lệnh EXECUTE như sau : Kết quả trả về : 3/- Hủy bỏ thủ tục nội tại : Khi một thủ tục nội tại không còn cần sử dụng nữa thì bạn có thể hủy bỏ nó ra khỏi cơ sở... trong thủ tục 1/- Mã hóa nội dung thủ tục : Giống như việc mã hóa nội dung của câu lệnh truy vấn trong các bảng ảo (view) mà trước đây đã trình bày, trong những trường hợp cần phải mã hóa các câu lệnh bên trong nội dung của thủ tục nội tại thì bạn sử dụng thành phần WITH ENCRYPTION kèm với cú pháp của lệnh tạo thủ tục nội tại hoặc lệnh sửa đổi nội dung thủ tục nội tại Vị trí của mệnh đề này được đặt... tục ngoài cùng nhất gọi là thủ tục cấp 1, thủ tục được gọi thực hiện kế tiếp là cấp 2 … bạn có thể sử dụng biến hệ thống @@NESTLEVEL để biết được cấp độ lồng hiện hành của thủ tục nội tại là bao nhiêu Tuy nhiên bên trong một thủ tục bạn có thể gọi thực hiện nhiều thủ tục khác nhau và số lần gọi thực hiện các thủ tục khác nhau là không giới hạn Ví dụ : - 16 Để xây dựng thủ tục tính số lượng đặt hàng, ... thị nội dung thủ tục thủ tục mã hóa 2/- Biên dịch thủ tục : Cú pháp : Ví dụ : Cú pháp : 3/- Thủ tục lồng : Bên thủ tục nội bạn gọi thực thủ tục nội khác Cấp độ lồng tối đa thủ tục 32 cấp Thủ tục. .. khỏi thủ tục nội tại, dòng lệnh phía sau lệnh RETURN không thực sau thủ tục thực lệnh RETURN SQL Server 2000 : Một số vấn đề khác thủ tục nội – Phần Một số vấn đề khác thủ tục nội mã hóa nội dung... cách để xem lại nội dung lệnh bên thủ tục Tuy nhiên gọi thực thủ tục nội mã hóa bình thường thủ tục khác chưa mã hóa Có thể xem nội dung lệnh bên thủ tục nội chưa mã hóa thủ tục nội hệ thống sp_helptext

Ngày đăng: 03/12/2015, 18:40

Mục lục

  • 1/- Thủ tục nội là gì ?

  • 2/- Các thủ tục nội tại hệ thống :

  • 3/- Các lợi ích khi sử dụng thủ tục nội tại :

  • 1/- Tham số đầu vào :

  • 2/- Tham số đầu ra :

  • 1/- Tạo mới một thủ tục nội tại :

  • 2/- Gọi thực hiện thủ tục nội tại :

  • 3/- Hủy bỏ thủ tục nội tại :

  • 4/- Thay đổi nội dung của thủ tục nội tại :

  • 1/- Mã hóa nội dung thủ tục :

  • 2/- Biên dịch thủ tục :

  • 3/- Thủ tục lồng nhau :

  • 4/- Sử dụng lệnh RETURN trong thủ tục :

  • 5/- Sử dụng bảng tạm trong thủ tục :

  • 6/- Tham số kiểu cursor bên trong thủ tục :

  • 7/- Thủ tục cập nhật bảng dữ liệu :

  • 8/- Thủ tục hiển thị dữ liệu :

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

Tài liệu liên quan