Aracılığıyla paylaş


Eğitim: Mevcut bir veritabanından başla

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiMicrosoft Fabric'te SQL veritabanı

SQL projeleri, bir veritabanındaki tablolar, görünümler ve saklı yordamlar gibi tüm nesneler için bildirim temelli (CREATE deyimi) dosyaları içerir. Bu dosyalar yeni veritabanları oluşturmak, mevcut veritabanlarını güncelleştirmek, hatta yalnızca kaynak denetimindeki veritabanını izlemek için kullanılabilir. Genellikle mevcut bir veritabanımız olduğunda ve SQL projesinde veritabanıyla eşleşen nesneleri en az çabayla oluşturmak istediğimizde bir SQL projesiyle başlarız.

Bazı SQL projeleri araçları, mevcut veritabanından yeni bir SQL projesi oluşturmak için tek bir adım içerir. Diğer araçlar, yeni bir SQL projesi oluşturmak ve mevcut veritabanındaki nesneleri içeri aktarmak için birkaç adım gerektirir. Visual Studio (SQL Server Veri Araçları) yönergeleri dışında, kılavuz SDK stili SQL projelerine odaklanır.

Bu öğreticideki 1. seçenekle şunları yapın:

1. Adım: Mevcut veritabanından yeni bir SQL projesi oluşturma 2. Adım: SQL projesini oluşturma

Bu öğreticideki 2. seçenekle şunları yapın:

  • 1. Adım: Yeni boş bir SQL projesi oluşturma
  • 2. Adım: Mevcut veritabanındaki nesneleri içeri aktarma
  • 3. Adım: SQL projesini derleme

Prerequisites

# install SqlPackage CLI
dotnet tool install -g Microsoft.SqlPackage
  • .NET 8 SDK
  • SqlPackage CLI
  • Microsoft.Build.Sql.Templates .NET şablonlarını
# install SqlPackage CLI
dotnet tool install -g Microsoft.SqlPackage

# install Microsoft.Build.Sql.Templates
dotnet new install Microsoft.Build.Sql.Templates

Note

Öğreticiyi tamamlamak için bir Azure SQL veya SQL Server örneğine erişiminiz olması gerekir. Windows'da veya kapsayıcılarında SQL Server geliştirici sürümü ile ücretsiz olarak yerel olarak geliştirebilirsiniz.

1. Seçenek: Mevcut veritabanından yeni bir SQL projesi oluşturma

1. Adım: Mevcut veritabanından yeni bir SQL projesi oluşturma

Visual Studio'daki SQL Server nesne gezgininde , proje oluşturmak istediğiniz veritabanına sağ tıklayın ve Yeni Proje Oluştur... öğesini seçin.

Visual Studio'da Veritabanını İçeri Aktar iletişim kutusunun ekran görüntüsü.

Yeni Proje Oluştur iletişim kutusunda, veritabanı adıyla eşleşmesi gerekmeyen bir proje adı girin. Proje konumunu gerektiği gibi doğrulayın ve değiştirin. Varsayılan içeri aktarma ayarları nesneleri şemaya göre klasörlere ve sonra nesne türüne göre içeri aktarır. İçeri aktarma ayarlarını değiştirerek klasör yapısını değiştirebilir veya içeri aktarılan nesnelere izinler ekleyebilirsiniz. İçeri aktarmayı başlatın.

İçeri aktarma işlemi devam ederken, ilerleme durumu Veritabanını İçeri Aktar iletişim kutusunda ileti olarak görüntülenir. İçeri aktarma işlemi tamamlandığında, içeri aktarılan nesneler Çözüm Gezgini'nde görünür ve günlükler altında proje dizinindeki Import Schema Logsbir dosyada depolanır. Bitirseçin.

Komut satırı için 1. seçenek kullanılamaz. Bunun yerine 2. seçeneği kullanın.

VS Code veya Azure Data Studio'daki veritabanı nesne gezgini görünümünde, proje oluşturmak istediğiniz veritabanını seçin. Veritabanına sağ tıklayın ve Veritabanından Proje Oluştur'u seçin.

Azure Data Studio'da Veritabanından proje oluştur iletişim kutusunun ekran görüntüsü.

Azure Data Studio'da Veritabanından proje oluştur iletişim kutusu, proje adının ve konumunun seçilmesini gerektirir. Varsayılan içeri aktarma ayarları nesneleri şemaya göre klasörlere ve sonra nesne türüne göre içeri aktarır. Farklı bir klasör yapısı seçebilir veya Oluştur'u seçmeden önce içeri aktarılan nesnelere izinler ekleyebilirsiniz.

VS Code'da komut istemleri bir proje adı ve konumu ister. Varsayılan içeri aktarma ayarları nesneleri şemaya göre klasörlere ve sonra nesne türüne göre içeri aktarır. İçeri aktarma başlamadan önce içeri aktarılan nesnelere farklı bir klasör yapısı seçebilir veya izinler ekleyebilirsiniz.

Yeni projeyi ve içeri aktarılan nesne tanımlarını görmek için Veritabanı Projeleri görünümünü açın.

Komut satırı için 1. seçenek kullanılamaz. Bunun yerine 2. seçeneği kullanın.

2. Adım: SQL projesini oluşturma

Derleme işlemi, nesneler arasındaki ilişkileri ve söz dizimini proje dosyasında belirtilen hedef platforma göre doğrular. Derleme işleminden alınan yapıt çıkışı, projeyi hedef veritabanına dağıtmak için kullanılabilen ve veritabanı şemasının derlenmiş modelini içeren bir .dacpac dosyasıdır.

Çözüm Gezginibölümünde proje düğümüne sağ tıklayın ve Derlemeseçin.

Derleme işlemini görüntülemek için çıkış penceresi otomatik olarak açılır. Hatalar veya uyarılar varsa, bunlar çıkış penceresinde görüntülenir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin\Debug\projectname.dacpac).

Komut satırı için 1. seçenek kullanılamaz. Bunun yerine 2. seçeneği kullanın.

VS Code veya Azure Data Studio'nun Veritabanı Projeleri görünümünde proje düğümüne sağ tıklayın ve Derlemeseçin.

Derleme işlemini görüntülemek için çıkış penceresi otomatik olarak açılır. Hatalar veya uyarılar varsa, bunlar çıkış penceresinde görüntülenir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin/Debug/projectname.dacpac).

Komut satırı için 1. seçenek kullanılamaz. Bunun yerine 2. seçeneği kullanın.

2. Seçenek: Yeni boş bir SQL projesi oluşturma ve mevcut veritabanındaki nesneleri içeri aktarma

Alternatif olarak, proje oluşturma ve nesne içeri aktarma adımları ayrı ayrı gerçekleştirilebilir.

1. Adım: Yeni boş bir SQL projesi oluşturma

Nesnelerimizi içeri aktarmadan önce yeni bir SQL veritabanı projesi oluşturarak projemize başlıyoruz.

Dosya, Yeni, ardından Proje'yi seçin.

Yeni Proje iletişim kutusunda, arama kutusunda SQL Server terimini kullanın. En üstteki sonuç SQL Server Veritabanı Projesiolmalıdır.

Yeni proje iletişim kutusunun ekran görüntüsü.

Sonraki seçerek sonraki adıma geçin. Veritabanı adıyla eşleşmesi gerekmeyen bir proje adı girin. Proje konumunu gerektiği gibi doğrulayın ve değiştirin.

Projeyi oluşturmak için Oluştur'u seçin. Boş proje açılır ve Çözüm Gezgini'nde düzenleme için görünür.

Dosya, Yeni, ardından Proje'yi seçin.

Yeni Proje iletişim kutusunda, arama kutusunda SQL Server terimini kullanın. En üstteki sonuç SQL Server Veritabanı Projesi, SDK stili (önizleme)olmalıdır.

Yeni proje iletişim kutusunun ekran görüntüsü.

Sonraki seçerek sonraki adıma geçin. Veritabanı adıyla eşleşmesi gerekmeyen bir proje adı girin. Proje konumunu gerektiği gibi doğrulayın ve değiştirin.

Projeyi oluşturmak için Oluştur'u seçin. Boş proje açılır ve Çözüm Gezgini'nde düzenleme için görünür.

VS Code veya Azure Data Studio'nun Veritabanı Projeleri görünümünde Yeni Proje düğmesini seçin.

Yeni görünüm öğesinin ekran görüntüsü.

İlk istem, öncelikli olarak hedef platformun SQL Server mı yoksa Azure SQL mi olduğuna bağlı olarak hangi proje şablonunun kullanılacağını belirler. SQL'in belirli bir sürümünü seçmeniz istenirse, hedef veritabanıyla eşleşen sürümü seçin, ancak hedef veritabanı sürümü bilinmiyorsa, değer daha sonra değiştirilebileceği için en son sürümü seçin.

Görüntülenen metin girişine veritabanı adıyla eşleşmesi gerekmeyen bir proje adı girin.

Görüntülenen "Klasör Seç" iletişim kutusunda, projenin klasörü, .sqlproj dosyası ve içinde bulunabilecek diğer içerikler için bir dizin seçin.

SDK stili proje oluşturulup oluşturulmayacağı sorulduğunda evet seçin.

İşlem tamamlandıktan sonra boş proje açılır ve düzenleme için Veritabanı Projeleri görünümünde görünür.

Microsoft.Build.Sql projeleri için .NET şablonları yüklüyse, komut satırından yeni bir SQL veritabanı projesi oluşturabilirsiniz. -n seçeneği projenin adını, -tp seçeneği ise proje hedef platformunu belirtir.

Tüm kullanılabilir seçenekleri görmek için -h seçeneğini kullanın.

# create a new SQL database project
dotnet new sqlproj -n MyDatabaseProject

2. Adım: Mevcut veritabanındaki nesneleri içeri aktarma

Çözüm Gezgini'nde proje düğümüne sağ tıklayın ve İçeri Aktar -> Veritabanı... öğesini seçin. Bu seçenek devre dışı bırakılırsa veritabanı projenizde nesneler oluşturulmuş olabilir. Nesneleri silebilir veya yeni bir proje oluşturabilirsiniz.

Veritabanını İçeri Aktar iletişim kutusunda, nesneleri içeri aktarmak istediğiniz veritabanı bağlantısını seçin. SQL Server nesne gezgininde veritabanına bağlandıysanız, geçmiş listesinde bulunur.

Visual Studio'da Veritabanını İçeri Aktar iletişim kutusunun ekran görüntüsü.

Varsayılan içeri aktarma ayarları nesneleri şemaya göre klasörlere ve sonra nesne türüne göre içeri aktarır. İçeri aktarma ayarlarını değiştirerek klasör yapısını değiştirebilir veya içeri aktarılan nesnelere izinler ekleyebilirsiniz. İçeri aktarmayı başlatın.

İçeri aktarma işlemi devam ederken, ilerleme durumu Veritabanını İçeri Aktar iletişim kutusunda ileti olarak görüntülenir. İçeri aktarma işlemi tamamlandığında, içeri aktarılan nesneler Çözüm Gezgini'nde görünür ve günlükler altında proje dizinindeki Import Schema Logsbir dosyada depolanır. Projeye dönmek için Son'u seçin.

1. adımda Visual Studio'da oluşturduğumuz yeni SQL veritabanı projesine mevcut veritabanındaki nesneleri içeri aktarmak için SqlPackage CLI'yi kullanacağız. Aşağıdaki SqlPackage komutu, bir veritabanının şemasını iç içe şema ve nesne türü klasörleri tarafından düzenlenmiş bir klasöre MyDatabaseProject aktarır.

sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType

Bu klasörler SDK stilinde bir SQL veritabanı proje klasörüne yerleştirildiğinde, içeri aktarmaya veya SQL proje dosyasını değiştirmeye gerek kalmadan projeye otomatik olarak eklenir.

Note

VS Code'daki SQL Veritabanı Projeleri uzantısı, veritabanındaki nesnelerin projeye aktarılmasını desteklemez. Veritabanındaki nesneleri içeri aktarmak için Azure Data Studio'daki SQL Veritabanı Projeleri uzantısını kullanın veya VS Code'daki mevcut bir veritabanından yeni bir proje oluşturmak için 1. seçeneği izleyin.

Azure Data Studio'daki SQL Veritabanı Projeleri uzantısında Veritabanı Projeleri görünümünü açın. Proje düğümüne sağ tıklayın ve Projeyi veritabanından güncelleştir'i seçin.

Azure Data Studio'da Veritabanını Güncelleştir iletişim kutusunun ekran görüntüsü.

Veritabanını Güncelleştir iletişim kutusunda, nesneleri içeri aktarmak istediğiniz veritabanı bağlantısını seçin. Veritabanına Bağlantılar görünümünde bağlandıysanız, geçmiş listesinde bulunur.

Gözden geçirmek ve içeri aktaracak nesnelerin bir alt kümesini seçmek için Şemadaki değişiklikleri görüntüle'yi veya Tüm nesneleri içeri aktarmak için tüm değişiklikleri uygula'yı seçin.

SqlPackage CLI, mevcut bir veritabanının şemasını bir dosyaya veya tek tek .dacpac.sql dosyalara ayıklamak için kullanılabilir. Aşağıdaki SqlPackage komutu, bir veritabanının şemasını iç içe şema ve nesne türü klasörleri tarafından düzenlenmiş dosyalara .sql ayıklar.

sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType

Bu klasörler SDK stilinde bir SQL veritabanı proje klasörüne yerleştirildiğinde, içeri aktarmaya veya SQL proje dosyasını değiştirmeye gerek kalmadan projeye otomatik olarak eklenir.

3. Adım: SQL projesini oluşturma

Derleme işlemi, nesneler arasındaki ilişkileri ve söz dizimini proje dosyasında belirtilen hedef platforma göre doğrular. Derleme işleminden alınan yapıt çıkışı, projeyi hedef veritabanına dağıtmak için kullanılabilen ve veritabanı şemasının derlenmiş modelini içeren bir .dacpac dosyasıdır.

Çözüm Gezginibölümünde proje düğümüne sağ tıklayın ve Derlemeseçin.

Derleme işlemini görüntülemek için çıkış penceresi otomatik olarak açılır. Hatalar veya uyarılar varsa, bunlar çıkış penceresinde görüntülenir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin\Debug\projectname.dacpac).

Çözüm Gezginibölümünde proje düğümüne sağ tıklayın ve Derlemeseçin.

Derleme işlemini görüntülemek için çıkış penceresi otomatik olarak açılır. Hatalar veya uyarılar varsa, bunlar çıkış penceresinde görüntülenir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin\Debug\projectname.dacpac).

VS Code veya Azure Data Studio'nun Veritabanı Projeleri görünümünde proje düğümüne sağ tıklayın ve Derlemeseçin.

Derleme işlemini görüntülemek için çıkış penceresi otomatik olarak açılır. Hatalar veya uyarılar varsa, bunlar çıkış penceresinde görüntülenir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin/Debug/projectname.dacpac).

SQL veritabanı projeleri, dotnet build komutu kullanılarak komut satırından oluşturulabilir.

dotnet build

# optionally specify the project file
dotnet build MyDatabaseProject.sqlproj

Derleme çıktısı, hataları veya uyarıları ve bunların oluştuğu belirli dosyaları ve satır numaralarını içerir. Başarılı bir derlemede, derleme yapıtı (.dacpac dosyası) oluşturulur ve konumu derleme çıkışına eklenir (varsayılan değer bin/Debug/projectname.dacpac).