Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Bạn làm gì trong SQL Server để TẠO HOẶC ALTER?

Bài viết này đề cập đến vấn đề mất quyền khi thả một đối tượng trong máy chủ SQL.

Vì vậy, đây là phương pháp giữ lại quyền:

IF OBJECT_ID('spCallSomething') IS NULL
    EXEC('CREATE PROCEDURE spCallSomething AS SET NOCOUNT ON;')
GO

ALTER PROCEDURE spCallSomething ... 
--instead of DROP/CREATE

Cũng hoạt động cho các chức năng, chỉ cần thay thế PROCEDURE với FUNCTION trong đoạn mã trên.

Một lý do khác để cân nhắc làm theo cách này là khả năng chịu đựng thất bại. Giả sử DROP của bạn thành công, nhưng CREATE của bạn không thành công - bạn kết thúc với một DB bị hỏng. Sử dụng phương pháp ALTER, bạn sẽ có một phiên bản cũ hơn của đối tượng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách ánh xạ một trường thực thể có tên là một từ dành riêng trong JPA

  2. Xóa các bản sao khỏi tập dữ liệu lớn (> 100Mio hàng)

  3. Khmer Unicode, tiếng Anh và Microsoft SQL Server 2008 dẫn đến dấu hỏi

  4. xuất từ ​​máy chủ sql sang tệp excel bằng cách sử dụng asp.net và vb.net?

  5. Cách chèn nhiều hàng vào bảng dựa trên một dãy số