Mengganti nama Prosedur Tersimpan

Berlaku untuk:SQL Server Azure SQL DatabaseAzure SQL Managed Instance

Topik ini menjelaskan cara mengganti nama prosedur tersimpan di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL.

Dalam Topik Ini

Sebelum Anda mulai

Batasan dan Pembatasan

  • Nama prosedur harus mematuhi aturan untuk pengidentifikasi.

  • Mengganti nama prosedur tersimpan mempertahankan object_id dan semua izin yang secara khusus ditetapkan ke prosedur. Menghilangkan dan membuat ulang objek membuat object_id baru dan menghapus izin apa pun yang secara khusus ditetapkan ke prosedur.

  • Mengganti nama prosedur tersimpan tidak mengubah nama objek terkait di kolom definisi tampilan katalog sys.sql_modules . Untuk melakukannya, Anda harus menghilangkan dan membuat ulang prosedur tersimpan dengan nama barunya.

  • Mengubah nama atau definisi prosedur dapat menyebabkan objek dependen gagal ketika objek tidak diperbarui untuk mencerminkan perubahan yang telah dilakukan pada prosedur. Untuk informasi selengkapnya, lihat Menampilkan Dependensi Prosedur Tersimpan.

Keamanan

Izin

CREATE PROCEDURE
Memerlukan izin CREATE PROCEDURE dalam database dan izin UBAH pada skema tempat prosedur sedang dibuat, atau memerlukan keanggotaan dalam peran database tetap db_ddladmin .

ALTER PROCEDURE
Memerlukan izin UBAH pada prosedur atau memerlukan keanggotaan dalam peran database tetap db_ddladmin .

Menggunakan SQL Server Management Studio

Untuk mengganti nama prosedur tersimpan

  1. Di Object Explorer, sambungkan ke instans Mesin Database lalu perluas instans tersebut.
  2. Perluas Database, perluas database tempat prosedur berada, lalu perluas Keterprograman.
  3. Tentukan dependensi prosedur tersimpan.
  4. Perluas Prosedur Tersimpan, klik kanan prosedur untuk mengganti nama, lalu klik Ganti Nama.
  5. Ubah nama prosedur.
  6. Ubah nama prosedur yang dirujuk dalam objek atau skrip dependen apa pun.

Menggunakan T-SQL

Untuk mengganti nama prosedur tersimpan

  1. Sambungkan ke Mesin Database.
  2. Dari bilah Standar, klik Kueri Baru.
  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan klik Jalankan. Contoh ini menunjukkan cara mengganti nama prosedur dengan menghilangkan prosedur dan membuat ulang prosedur dengan nama baru. Contoh pertama membuat prosedur 'HumanResources.uspGetAllEmployeesTesttersimpan . Contoh kedua mengganti nama prosedur tersimpan menjadi HumanResources.uspEveryEmployeeTest.
--Create the stored procedure.  
USE AdventureWorks2022;  
GO  

CREATE PROCEDURE HumanResources.uspGetAllEmployeesTest  
AS  
    SET NOCOUNT ON;  
    SELECT LastName, FirstName, Department  
    FROM HumanResources.vEmployeeDepartmentHistory;  
GO  
  
--Rename the stored procedure.  
EXEC sp_rename 'HumanResources.uspGetAllEmployeesTest', 'uspEveryEmployeeTest'; 

Lihat juga

ALTER PROCEDURE (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
Membuat Prosedur Tersimpan
Mengubah Prosedur Tersimpan
Menghapus Prosedur Tersimpan
Lihat Definisi Prosedur Tersimpan
Menampilkan Dependensi Prosedur Tersimpan