Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Azure Data Studio akan dihentikan pada 28 Februari 2026. Kami menyarankan agar Anda menggunakan Visual Studio Code. Untuk informasi selengkapnya tentang migrasi ke Visual Studio Code, kunjungi Apa yang terjadi pada Azure Data Studio?
Ekstensi Proyek SQL Database adalah ekstensi Azure Data Studio dan Visual Studio Code untuk mengembangkan database SQL di lingkungan pengembangan berbasis proyek. Database yang kompatibel termasuk SQL Server, Azure SQL Database, Azure SQL Managed Instance, dan Azure Synapse SQL. Proyek SQL adalah representasi lokal objek SQL yang terdiri dari skema untuk database tunggal, seperti tabel, prosedur tersimpan, atau fungsi. Saat proyek SQL Database dibangun, artefak output adalah file .dacpac . Database baru dan yang sudah ada dapat diperbarui agar sesuai dengan konten .dacpac dengan menerbitkan proyek SQL Database dengan ekstensi Proyek SQL Database atau dengan menerbitkan .dacpac dengan antarmuka baris perintah SqlPackage.
Fitur ekstensi
Ekstensi Proyek SQL Database menyediakan fitur berikut:
- Buat proyek kosong baru.
- Buat proyek baru dari database yang tersambung.
- Buka proyek yang sebelumnya dibuat di Azure Data Studio, Visual Studio Code , atau di SQL Server Data Tools.
- Edit proyek dengan menambahkan atau menghapus objek (tabel, tampilan, prosedur tersimpan) atau skrip kustom dalam proyek.
- Atur file/skrip dalam folder.
- Tambahkan referensi ke database sistem atau dacpac pengguna.
- Bangun satu proyek.
- Sebarkan satu proyek.
- Muat detail koneksi (autentikasi SQL Windows) dan variabel SQLCMD dari profil penyebaran.
Fitur berikut dalam ekstensi Proyek SQL Database saat ini dalam pratinjau:
- Buat proyek baru dari file spesifikasi OpenAPI .
- Proyek SQL dengan gaya SDK (Microsoft.Build.Sql).
Tonton video singkat 10 menit ini untuk pengenalan ekstensi Proyek SQL Database di Azure Data Studio:
Instal
Anda dapat menginstal ekstensi Proyek SQL Database di Azure Data Studio dan Visual Studio Code.
Azure Data Studio
Untuk menginstal ekstensi Proyek SQL Database di Azure Data Studio, ikuti langkah-langkah berikut:
Buka manajer ekstensi untuk mengakses ekstensi yang tersedia. Untuk melakukannya, pilih ikon ekstensi atau pilih Ekstensi di menu Tampilan .
Identifikasi ekstensi Proyek SQL Database dengan mengetikkan seluruh atau sebagian nama di kotak pencarian ekstensi. Pilih ekstensi yang tersedia untuk melihat detailnya.
Pilih ekstensi yang Anda inginkan dan pilih untuk Menginstalnya .
Pilih Muat Ulang untuk mengaktifkan ekstensi (hanya diperlukan saat pertama kali Anda menginstal ekstensi).
Pilih ikon Proyek dari bilah aktivitas.
Catatan
Disarankan untuk menginstal ekstensi Schema Compare bersama ekstensi Proyek SQL Database untuk fungsionalitas penuh.
Visual Studio Code
Ekstensi Proyek SQL Database diinstal dengan ekstensi mssql untuk Visual Studio Code.
Dependensi
Ekstensi Proyek SQL Database memiliki dependensi pada .NET SDK (diperlukan) dan AutoRest.Sql (opsional).
.NET SDK
.NET SDK diperlukan untuk fungsionalitas build proyek dan Anda diminta untuk menginstal .NET SDK jika versi yang didukung tidak dapat dideteksi oleh ekstensi. .NET SDK dapat diunduh dan diinstal untuk Windows, macOS, dan Linux.
Jika Anda ingin memeriksa versi dotnet SDK yang terinstal saat ini, buka terminal dan jalankan perintah berikut:
dotnet --list-sdks
Setelah menginstal .NET SDK, lingkungan Anda siap untuk menggunakan ekstensi Proyek SQL Database.
Masalah umum
Nuget.org hilang dari daftar sumber dapat mengakibatkan pesan kesalahan seperti:
error MSB4236: The SDK 'Microsoft.Build.Sql/0.1.9-preview' specified could not be found.
Unable to find package Microsoft.Build.Sql. No packages exist with this id in source(s): Microsoft Visual Studio Offline Packages
Untuk memeriksa apakah nuget.org terdaftar sebagai sumber, jalankan dotnet nuget list source
dari baris perintah dan tinjau hasil untuk item yang [Enabled]
merujuk nuget.org. Jika nuget.org tidak terdaftar sebagai sumber, jalankan dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.org
.
Versi .NET SDK yang tidak didukung dapat mengakibatkan pesan kesalahan seperti:
error MSB4018: The "SqlBuildTask" task failed unexpectedly.
-
error MSB4018: System.TypeInitializationException: The type initializer for 'SqlSchemaModelStaticState' threw an exception. ---> System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified. [c:\Users\ .sqlproj]_
(file yang ditautkan tidak ada tersebut memiliki tanda kurung siku penutup yang tidak cocok).
Untuk memaksa ekstensi Proyek SQL Database menggunakan versi v6.x dari .NET SDK saat beberapa versi diinstal, tambahkan file global.json ke folder yang berisi proyek SQL.
AutoRest.Sql
Ekstensi SQL untuk AutoRest secara otomatis diunduh dan digunakan oleh ekstensi Proyek SQL Database saat proyek SQL dihasilkan dari file spesifikasi OpenAPI.
Batasan
Saat ini, ekstensi Proyek SQL Database memiliki batasan berikut:
- Tugas (build/publish) tidak didefinisikan oleh pengguna.
- Objek SQLCLR dalam proyek tidak didukung.
- Aturan analisis kode pada proyek saat ini tidak didukung.
Ruang kerja
Proyek database SQL terkandung dalam ruang kerja logis di Azure Data Studio dan Visual Studio Code. Ruang kerja mengelola folder yang terlihat di panel Explorer. Semua proyek SQL dalam folder yang terbuka di ruang kerja saat ini tersedia dalam tampilan Proyek SQL Database secara default.
Anda dapat menambahkan dan menghapus proyek secara manual dari ruang kerja melalui antarmuka di panel Proyek . Pengaturan untuk ruang kerja dapat diedit secara manual dalam .code-workspace
file, jika perlu.
Dalam file contoh .code-workspace
berikut, array folders
mencantumkan semua folder yang disertakan dalam panel Explorer dan array dataworkspace.excludedProjects
dalam settings
mencantumkan semua proyek SQL yang dikecualikan dari panel Proyek.
{
"folders": [
{
"path": "."
},
{
"name": "WideWorldImportersDW",
"path": "..\\WideWorldImportersDW"
}
],
"settings": {
"dataworkspace.excludedProjects": [
"AdventureWorksLT.sqlproj"
]
}
}