Bagikan melalui


Mengubah Assembly

Berlaku untuk: SQL Server

Rakitan yang telah terdaftar di SQL Server dapat diperbarui dari versi yang lebih baru menggunakan pernyataan ALTER ASSEMBLY. Untuk memperbarui assembly, gunakan pernyataan ALTER ASSEMBLY dengan sintaks berikut:

ALTER ASSEMBLY SQLCLRTest  
FROM 'C:\MyDBApp\SQLCLRTest.dll'  

ALTER ASSEMBLY tidak mengganggu proses yang sedang berjalan yang menggunakan assembly; proses terus dijalankan dengan rakitan yang tidak diubah. ALTER ASSEMBLY tidak dapat digunakan untuk mengubah tanda tangan fungsi common language runtime (CLR), fungsi agregat, prosedur tersimpan, dan pemicu. Metode publik baru dapat ditambahkan ke assembly, metode privat dapat dimodifikasi dengan cara apa pun, dan metode publik dapat dimodifikasi selama tanda tangan atau atribut tidak diubah. Bidang yang terkandung dalam jenis yang ditentukan pengguna berserialisasi asli, termasuk anggota data atau kelas dasar, tidak dapat diubah dengan menggunakan ALTER ASSEMBLY. Semua perubahan lainnya tidak didukung. Untuk informasi selengkapnya, lihat MENGUBAH RAKITAN (Transact-SQL).

Mengubah Sekumpulan Izin Rakitan

Kumpulan izin assembly juga dapat diubah menggunakan pernyataan ALTER ASSEMBLY. Pernyataan berikut mengubah kumpulan izin rakitan SQLCLRTest menjadi EXTERNAL_ACCESS.

ALTER ASSEMBLY SQLCLRTest  
WITH PERMISSION_SET = EXTERNAL_ACCESS   

Jika kumpulan izin rakitan diubah dari SAFE ke EXTERNAL_ACCESS atau TIDAK AMAN, kunci asimetris dan masuk terkait dengan izin RAKITAN AKSES EKSTERNAL atau izin ASSEMBLY TIDAK AMAN untuk rakitan harus dibuat terlebih dahulu. Untuk informasi selengkapnya, lihat Membuat Rakitan.

Menambahkan Kode Sumber Rakitan

Klausa TAMBAHKAN FILE dalam sintaks ALTER ASSEMBLY tidak ada di CREATE ASSEMBLY. Anda dapat menggunakannya untuk menambahkan kode sumber atau file lain yang terkait dengan rakitan. File disalin dari lokasi aslinya dan disimpan dalam tabel sistem dalam database. Ini memastikan bahwa Anda selalu memiliki kode sumber atau file lain jika Anda perlu membuat ulang atau mendokumentasikan versi UDT saat ini.

Pernyataan berikut menambahkan kode sumber kelas Point.cs untuk Point UDT. Ini menyalin teks yang terkandung dalam file Point.cs dan menyimpannya di database dengan nama "PointSource".

ALTER ASSEMBLY Point

ADD FILE FROM 'C:\Projects\Point\Point.cs' AS PointSource

Lihat Juga

Mengelola Rakitan Integrasi CLR
Membuat Rakitan
Menjatuhkan Rakitan
MENGUBAH RAKITAN (Transact-SQL)