Bagikan melalui


Menyebarkan objek database CLR

Berlaku untuk:SQL Server

Penyebaran adalah proses di mana Anda mendistribusikan aplikasi atau modul yang sudah selesai untuk diinstal dan dijalankan di komputer lain. Dengan menggunakan Visual Studio, Anda dapat mengembangkan objek database common language runtime (CLR) dan menyebarkannya ke server pengujian. Atau, objek database terkelola juga dapat dikompilasi dengan file redistribusi .NET Framework, bukan Visual Studio. Setelah dikompilasi, rakitan yang berisi objek database CLR kemudian dapat disebarkan ke server pengujian menggunakan pernyataan Visual Studio atau Transact-SQL.

Setelah metode CLR diuji dan diverifikasi di server pengujian, metode tersebut dapat didistribusikan ke server produksi menggunakan skrip penyebaran. Skrip penyebaran dapat dihasilkan secara manual, atau dengan menggunakan SQL Server Management Studio (dibahas nanti dalam artikel ini).

Fitur integrasi CLR dinonaktifkan secara default di SQL Server dan harus diaktifkan untuk menggunakan rakitan CLR. Untuk informasi selengkapnya, lihat Mengaktifkan integrasi CLR.

Menyebarkan assembly ke server pengujian

Dengan menggunakan Visual Studio, Anda dapat mengembangkan fungsi CLR, prosedur, pemicu, jenis yang ditentukan pengguna (UDT), atau agregat yang ditentukan pengguna (UDA), dan menyebarkannya ke server pengujian. Objek database terkelola ini juga dapat dikompilasi dengan kompilator baris perintah, seperti csc.exe dan vbc.exe, disertakan dengan file redistribusi .NET Framework. Lingkungan Pengembangan Terintegrasi Visual Studio tidak diperlukan untuk mengembangkan objek database terkelola untuk SQL Server.

Pastikan bahwa semua kesalahan dan peringatan pengkompilasi diselesaikan. Rakitan yang berisi rutinitas CLR kemudian dapat didaftarkan dalam database SQL Server menggunakan pernyataan Visual Studio atau Transact-SQL.

Catatan

Protokol jaringan TCP/IP harus diaktifkan pada instans SQL Server untuk menggunakan Visual Studio untuk pengembangan, penelusuran kesalahan, dan pengembangan jarak jauh. Untuk informasi selengkapnya tentang mengaktifkan protokol TCP/IP di server, lihat Mengonfigurasi Protokol Klien.

Menyebarkan perakitan menggunakan visual studio

  1. Buat proyek dengan memilih nama proyek Build dari menu Build .

  2. Atasi semua kesalahan dan peringatan build sebelum menyebarkan rakitan ke server pengujian.

  3. Pilih Sebarkan dari menu Build . Rakitan kemudian didaftarkan dalam instans SQL Server dan database yang ditentukan ketika proyek SQL Server pertama kali dibuat di Visual Studio.

Menyebarkan assembly menggunakan Transact-SQL

  1. Kompilasi rakitan dari file sumber menggunakan kompilator baris perintah yang disertakan dengan .NET Framework.

  2. Untuk file sumber C#:

    csc /target:library C:\helloworld.cs

  3. Untuk file sumber Visual Basic:

    vbc /target:library C:\helloworld.vb

Perintah ini meluncurkan pengkompilasi C# atau Visual Basic menggunakan opsi /target untuk menentukan pembuatan DLL pustaka.

  1. Atasi semua kesalahan dan peringatan build sebelum menyebarkan rakitan ke server pengujian.

  2. Buka SQL Server Management Studio di server pengujian. Buat kueri baru, tersambung ke database pengujian yang sesuai (seperti AdventureWorks2022).

  3. Buat rakitan di server dengan menambahkan Transact-SQL berikut ke kueri.

    CREATE ASSEMBLY HelloWorld from 'c:\helloworld.dll' WITH PERMISSION_SET = SAFE;

  4. Prosedur, fungsi, agregat, jenis yang ditentukan pengguna, atau pemicu kemudian harus dibuat dalam instans SQL Server. Jika rakitan HelloWorld berisi metode bernama HelloWorld di kelas Procedures, Transact-SQL berikut dapat ditambahkan ke kueri untuk membuat prosedur yang disebut hello di SQL Server.

    CREATE PROCEDURE hello AS
    EXTERNAL NAME HelloWorld.Procedures.HelloWorld;
    

Untuk informasi selengkapnya tentang membuat berbagai jenis objek database terkelola di SQL Server, lihat:

Menyebarkan assembly ke server produksi

Setelah objek database CLR diuji dan diverifikasi di server pengujian, objek tersebut dapat didistribusikan ke server produksi. Untuk informasi selengkapnya tentang penelusuran kesalahan objek database terkelola, lihat Cara men-debug objek database CLR.

Penyebaran objek database terkelola mirip dengan objek database reguler (tabel, rutinitas Transact-SQL, dan sebagainya). Rakitan yang berisi objek database CLR dapat disebarkan ke server lain menggunakan skrip penyebaran. Skrip penyebaran dapat dibuat dengan menggunakan Menghasilkan Skrip fungsionalitas Management Studio. Skrip penyebaran juga dapat dibangun secara manual, atau dibangun menggunakan Menghasilkan Skrip dan diubah secara manual. Setelah skrip penyebaran dibangun, skrip dapat dijalankan pada instans SQL Server lain untuk menyebarkan objek database terkelola.

Membuat skrip penyebaran menggunakan hasilkan skrip

  1. Buka Management Studio dan sambungkan ke instans SQL Server tempat rakitan terkelola atau objek database yang akan disebarkan didaftarkan.

  2. Di Object Explorer, perluas <nama> server dan pohon Database. Klik kanan database tempat objek database terkelola didaftarkan, pilih Tugas, lalu pilih Hasilkan Skrip. Wizard Skrip terbuka.

  3. Pilih database dari kotak daftar dan pilih Berikutnya.

  4. Di panel Pilih Opsi Skrip, pilih Berikutnya, atau ubah opsi lalu pilih Berikutnya.

  5. Di panel Pilih Tipe Objek, pilih tipe objek database yang akan disebarkan. Pilih Selanjutnya.

  6. Untuk setiap jenis objek yang dipilih di panel Pilih Tipe Objek, panel Pilih <jenis> disajikan. Di panel ini, Anda dapat memilih dari semua instans jenis objek database yang terdaftar dalam database yang ditentukan. Pilih satu atau beberapa objek dan pilih Berikutnya.

  7. Panel Opsi Output muncul ketika semua jenis objek database yang diinginkan dipilih. Pilih Skrip untuk file dan tentukan jalur file untuk skrip. Pilih Selanjutnya. Tinjau pilihan Anda dan pilih Selesai. Skrip penyebaran disimpan ke jalur file yang ditentukan.

Pasca skrip penyebaran

Anda dapat menjalankan skrip pasca penyebaran.

Untuk menambahkan skrip pasca penyebaran, tambahkan file yang disebut postdeployscript.sql di direktori proyek Visual Studio Anda. Misalnya, klik kanan proyek Anda di Penjelajah Solusi dan pilih Tambahkan Item yang Sudah Ada. Tambahkan file di akar proyek, bukan di folder Uji Skrip.

Saat Anda memilih sebarkan, Visual Studio akan menjalankan skrip ini setelah penyebaran proyek Anda.