intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài 8 Thủ tục lưu trữ

Chia sẻ: Hoang Minh Minh | Ngày: | Loại File: PPT | Số trang:29

128
lượt xem
20
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Thủ tục lưu trữ Chương 8     .Ôn tập Ôn tập bảng nhìn và con trỏ  Một bảng nhìn là một cách tìm kiếm dữ liệu luân phiên từ  một  hoặc  nhiều  bảng  trong  CSDL. 

Chủ đề:
Lưu

Nội dung Text: Bài 8 Thủ tục lưu trữ

  1. Thủ tục lưu trữ Chương 8    
  2. Ôn tập Ôn tập bảng nhìn và con trỏ  Một bảng nhìn là một cách tìm kiếm dữ liệu luân phiên từ  một  hoặc  nhiều  bảng  trong  CSDL.  Một  bảng  nhìn  là  một  bảng  ảo  thường  xuyên  được  tạo  lập  như  là  kết  quả  của  truy vấn thực thi.  Một  bảng  nhìn  thực  sự  là  một  bộ  lọc  trên  bảng  truy  cập  như truy vấn.  Câu  lệnh  CREATE VIEW  được sử dụng  để tạo một bảng  nhìn.  Câu  lệnh  DROP  VIEW  được  sử  dụng  để  xoá  một  bảng  nhìn.  Con  trỏ  là  một  đối  tượng  CSDL  được  sử  dụng  bởi  ứng  dụng  để  thao  tác  dữ  liệu  bằng  các  hàng  hơn  là  các  tập  hợp. Sử dụng các con trỏ, nhiều thao tác có thể thực hiện  hàng  theo  hàng  thu  được  một  tập  hợp  kết  quả  cần  hoặc  Database Design and Implementation with SQL Server 2000 / Session 8 / 2 of 29
  3. Ôn tập   Một  con  trỏ  được  tạo  lập  bằng  cách  sử  dụng  câu  lệnh  DECLARE.  Đầu tiên một con trỏ được khai báo hoặc được  tạo lập trong bộ nhớ. Sau đó nó được mở.   Câu lệnh OPEN được sử dụng để mở con trỏ. Truy lục các  bản  ghi  bằng  một  con  trỏ  được  gọi  là  tìm  nạp  (fetching).  Một người sử dụng có thể truy lục chỉ một bản ghi tại một  thời điểm.   Lệnh FETCH  được sử dụng  để  đọc các bản ghi bằng con  trỏ.   Ở  chế  độ  mặc  định, một con trỏ chỉ có chiều tiến. Nó có  thể  tìm  nạp  các  bản  ghi  từ  bản  ghi  đầu  tiên  đến  bản  ghi  cuối  cùng.  Nó  không  thể  trực  tiếp  tìm  nạp  hàng  đầu  tiên  hoặc hàng cuối cùng trong bảng.  Database Design and Implementation with SQL Server 2000 / Session 8 / 3 of 29
  4. Ôn tập   Khi  một  con  trỏ  là  tạm  thời  không  cần  thiết,  nó  có  thể  bị  đóng lại bằng cách sử dụng lệnh CLOSE.  Một khi con trỏ  được sử dụng, nó có thể  được gỡ bỏ bằng  cách sử dụng lệnh DEALLOCATE.  Database Design and Implementation with SQL Server 2000 / Session 8 / 4 of 29
  5. Mục tiêu  Định nghĩa các thủ tục lưu trữ.  Liệt kê các ưu điểm của thủ tục lưu trữ.  Thảo luận các kiểu của thủ tục lưu trữ.  Giải thích các danh mục của hệ thống thủ tục lưu trữ.  Giải  thích  quá  trình  tạo  lập,  sửa  chữa  và  thực  thi  các  thủ  tục lưu trữ do người dùng định nghĩa.  Sử dụng các tham số trong thủ tục lưu trữ.  Chọn các tuỳ chọn biên dịch lại phù hợp.  Tìm hiểu quá trình xảy ra lỗi trong thủ tục lưu trữ. Database Design and Implementation with SQL Server 2000 / Session 8 / 5 of 29
  6. Thủ tục lưu trữ Tập  hợp  biên  dịch  các  câu  lệnh  T­SQL  được  lưu  trữ  với   một tên  Việc ghi  được thực hiện bởi những người phát triển CSDL  (database developers) hoặc DBA  Sử dụng để thực hiệncác nhiệm vụ quản trị, hoặc áp dụng  các quy luật giao dịch phức tạp  Chứa các câu lệnh DML Database Design and Implementation with SQL Server 2000 / Session 8 / 6 of 29
  7. Thủ tục lưu trữ  Database Design and Implementation with SQL Server 2000 / Session 8 / 7 of 29
  8. Benefits of Stored  Procedures Increased execution speed    Faster access to data   Modular programming   Consistency   Enhanced security Database Design and Implementation with SQL Server 2000 / Session 8 / 8 of 29
  9. Các kiểu của thủ tục lưu trữ Các thủ tục lưu trữ hệ thống (Có thể được thực hiện)    Các  thủ  tục  người  dùng  định  nghĩa  (Có  thể  được  tạo  lập và thực thi) Database Design and Implementation with SQL Server 2000 / Session 8 / 9 of 29
  10. Các danh mục của  thủ tục lưu trữ hệ thống SQL Mail Catalog Extended SQL Server Query Agent System stored Replication Distributed procedures Query System Cursor Security Database Design and Implementation with SQL Server 2000 / Session 8 / 10 of 29
  11. Ví dụ về hệ thống thủ tục  lưu trữ sp_stop_job sp_database s sp_server_info sp_password System stored sp_stored_procedures sp_configure procedures sp_tables sp_help sp_helptext sp_start_job Database Design and Implementation with SQL Server 2000 / Session 8 / 11 of 29
  12. User­defined Stored  Procedures  Created  by  users  in  the  current  database  using  the   CREATE PROCEDURE statement  Database  owner  has  default  permission  to  use  the  CREATE PROCEDURE statement  Syntax: CREATE PROC[EDURE] procedure_name  Example: CREATE PROCEDURE Titles_1389 AS PRINT ‘This code displays the titles for publisher 1389’ SELECT * FROM titles WHERE pub_id = Database Design and Implementation with SQL Server 2000 / Session 8 / 12 of 29
  13. Hướng dẫn để tạo  thủ tục người dùng định nghĩa Tên phải tuân theo quy luật tạo của định danh.   Tất cả các  đối tượng CSDL có thể  được tạo lập trong  một  thủ  tục  lưu  trữ,  Trừ  mặc  định,  các  quy  luật,  các  trigger, các thủ tục, và các bảng nhìn. Việc tạo lập  đối  tượng có thể tham chiếu trong một thủ tục một lâầntừ  khi nó được tạo lập.  Các thủ tục lưu trữ có thể tham chiếu thông qua bảng  tạm.  Các thủ tục gọi là thủ tục lưu trữ có quyền truy cập tới  tất cả các đối tượng trong khi thủ tục được gọi.  2100 tham số có thể  được sử dụng trong một thủ tục  lưu trữ. Database Design and Implementation with SQL Server 2000 / Session 8 / 13 of 29
  14. ướng dẫn cho việc tạo lập thủ tục người dùng định nghĩa Chúng  ta  có  thể  tạo  lập  nhiều  biến  cục  bộ  trong  thủ   tục  lưu  trữ  tuỳ  thuộc  vào  khả  năng  cung  cấp  của  bộ  nhớ.  Dung lượng tối đa của thủ tục lưu trữ là 128 MB.  Database Design and Implementation with SQL Server 2000 / Session 8 / 14 of 29
  15. Thực thi các thủ tục  người dùng định nghĩa Câu lệnh EXECUTE được sử dụng để chạy các thủ tục   do người dùng định nghĩa.  Cú pháp: EXEC[UTE] procedure_name   Example: EXECUTE Titles_1389 Database Design and Implementation with SQL Server 2000 / Session 8 / 15 of 29
  16. Sử dụng các tham số  trong các thủ tục lưu trữ­ I Các tham số có thể được sử dụng để truyền giá trị vào   hoặc ra từ thủ tục lưu trữ.   Cú pháp: CREATE PROCEDURE procedure_name @Parameter_name data_type AS : Database Design and Implementation with SQL Server 2000 / Session 8 / 16 of 29
  17. Sử dụng các tham số  trong các thủ tục lưu trữ ­ II Ví dụ:  CREATE PROCEDURE Titles_Pub @v_pubid char(4) AS SELECT * FROM titles WHERE pub_id = @v_pubid Example execution:  EXECUTE Titles_Pub ‘0877’ Database Design and Implementation with SQL Server 2000 / Session 8 / 17 of 29
  18. Biên dịch lại các thủ tục lưu trữ Các thủ tục lưu trữ  được biên dịch lại  để phản  ánh sự   thay đổi tới các chỉ số.  Có ba cách để biên dịch lại các thủ tục:   Sử dụng thủ tục hệ thống sp_recompile system  Chỉ rõ WITH RECOMPILE với lệnh CREATE  PROCEDURE   Chỉ rõ WITH RECOMPILE với lệnh EXECUTE  Database Design and Implementation with SQL Server 2000 / Session 8 / 18 of 29
  19. Sửa chữa các thủ tục lưu trữ Câu lệnh ALTER PROCEDURE được sử dụng để sửa   chữa một thủ tục lưu trữ  Cú pháp giống như lệnh CREATE PROCEDURE  Sự thay đổi này vẫn giữ lại các quyền người dùng Database Design and Implementation with SQL Server 2000 / Session 8 / 19 of 29
  20. Các thông báo lỗi Trả  về  các  mã  hoặc  lệnh  RAISERROR  có  thể  được   dùng để đưa ra các lỗi của người dùng  Trả về mã trong thủ tục lưu trữ là các giá trị nguyên  Lệnh  RAISERROR  statement  ghi  các  lỗi  và  gán  các  cấp độ nghiêm trọng của lỗi Database Design and Implementation with SQL Server 2000 / Session 8 / 20 of 29
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2