Öğretici: Transact-SQL düzenleyicisini kullanarak veritabanı nesneleri oluşturma - Azure Data Studio

Sorgu oluşturma ve çalıştırma, saklı yordamlar, betikler vb. veritabanı uzmanlarının temel görevleridir. Bu öğretici, veritabanı nesneleri oluşturmak için T-SQL düzenleyicisindeki temel özellikleri gösterir.

Bu öğreticide, Azure Data Studio'yu kullanarak şunları yapmayı öğreneceksiniz:

  • Veritabanı nesnelerini arama
  • Tablo verilerini düzenleme
  • T-SQL'i hızla yazmak için kod parçacıkları kullanma
  • Tanıma Göz At ve Tanıma Git'i kullanarak veritabanı nesnesi ayrıntılarını görüntüleme

Önkoşullar

Bu öğretici sql server veya Azure SQL Veritabanı TutorialDB gerektirir. TutorialDB veritabanını oluşturmak için aşağıdaki hızlı başlangıçlardan birini tamamlayın:

Bir veritabanı nesnesini hızla bulma ve ortak bir görev gerçekleştirme

Azure Data Studio, veritabanı nesnelerini hızla bulmak için bir arama pencere öğesi sağlar. Sonuçlar listesi, seçili nesneyle ilgili ortak görevler için tablo için Verileri Düzenle gibi bir bağlam menüsü sağlar.

  1. SUNUCULAR kenar çubuğunu (Ctrl+G) açın, Veritabanları'nı genişletin ve TutorialDB'yi seçin.

  2. TutorialDB'ye sağ tıklayıp bağlam menüsünden Yönet'i seçerek TutorialDB Panosu'nu açın:

    bağlam menüsü - Yönet

  3. Panoda dbo'ya sağ tıklayın. Müşteriler (arama pencere öğesinde) ve Verileri Düzenle'yi seçin.

    İpucu

    Çok sayıda nesnesi olan veritabanlarında, aradığınız tabloyu, görünümü vb. hızla bulmak için arama pencere öğesini kullanın.

    hızlı arama pencere öğesi

  4. İlk satırdaki E-posta sütununu düzenleyin, yazın orlando0@adventure-works.comve değişikliği kaydetmek için Enter tuşuna basın.

    verileri düzenleme

Saklı yordamlar oluşturmak için T-SQL kod parçacıkları kullanma

Azure Data Studio, deyimleri hızla oluşturmak için birçok yerleşik T-SQL kod parçacığı sağlar.

  1. Ctrl+N tuşlarına basarak yeni bir sorgu düzenleyicisi açın.

  2. Düzenleyiciye sql yazın, sqlCreateStoredProcedure'a kadar aşağı ok tuşuna basın ve saklı yordam oluşturma parçacığını yüklemek için Sekme tuşuna (veya Enter tuşuna) basın.

    Düzenleyicide sql yazılan ve sqlCreateStoredProcedure seçeneğinin vurgulanmış olduğu Sorgu Düzenleyicisi gösteren ekran görüntüsü.

  3. Saklı yordam oluşturma kod parçacığında, hızlı düzenleme için ayarlanmış iki alan vardır: StoredProcedureName ve SchemaName. StoredProcedureName öğesini seçin, sağ tıklayın ve Tüm Oluşumları Değiştir'i seçin. Şimdi getCustomer yazın ve tüm StoredProcedureName girişleri getCustomer olarak değişir.

    Tüm Oluşumları Değiştir seçeneğinin vurgulu olduğu Sorgu Düzenleyicisi gösteren ekran görüntüsü.

  4. SchemaName'in tüm oluşumlarını dbo olarak değiştirin.

  5. Kod parçacığı, güncelleştirilmesi gereken yer tutucu parametreler ve gövde metni içerir. EXECUTE deyimi, yordamın kaç parametresi olacağını bilmediğinden yer tutucu metin de içerir. Bu öğretici için kod parçacığını aşağıdaki kod gibi görünecek şekilde güncelleştirin:

    -- Create a new stored procedure called 'getCustomer' in schema 'dbo'
    -- Drop the stored procedure if it already exists
    IF EXISTS (
    SELECT *
    FROM INFORMATION_SCHEMA.ROUTINES
    WHERE SPECIFIC_SCHEMA = N'dbo'
    AND SPECIFIC_NAME = N'getCustomer'
    )
    DROP PROCEDURE dbo.getCustomer
    GO
    -- Create the stored procedure in the specified schema
    CREATE PROCEDURE dbo.getCustomer
    @ID int
    -- add more stored procedure parameters here
    AS
    -- body of the stored procedure
    SELECT  c.CustomerId, 
    c.Name, 
    c.Location, 
    c.Email
    FROM dbo.Customers c
    WHERE c.CustomerId = @ID
    FOR JSON PATH
    
    GO
    -- example to execute the stored procedure we just created
    EXECUTE dbo.getCustomer 1
    GO
    
  6. Saklı yordamı oluşturmak ve bir test çalıştırması yapmak için F5 tuşuna basın.

Saklı yordam oluşturulur ve SONUÇLAR bölmesi döndürülen müşteriyi JSON'da görüntüler. Biçimlendirilmiş JSON'ı görmek için döndürülen kayda tıklayın.

Göz Atma Tanımını Kullanma

Azure Data Studio, göz atma tanımı özelliğini kullanarak bir nesne tanımını görüntüleme olanağı sağlar. Bu bölüm ikinci bir saklı yordam oluşturur ve saklı yordamın gövdesini hızla oluşturmak için tabloda hangi sütunların olduğunu görmek için göz atma tanımını kullanır.

  1. Ctrl+N tuşlarına basarak yeni bir düzenleyici açın.

  2. Düzenleyiciye sql yazın, sqlCreateStoredProcedure'a kadar aşağı ok tuşuna basın ve saklı yordam oluşturma parçacığını yüklemek için Sekme tuşuna (veya Enter tuşuna) basın.

  3. SetCustomer for StoredProcedureName ve dbo for SchemaName yazın

  4. @param Yer tutucuları aşağıdaki parametre tanımıyla değiştirin:

    @json_val nvarchar(max)
    
  5. Saklı yordamın gövdesini aşağıdaki kodla değiştirin:

    INSERT INTO dbo.Customers
    
  6. Yeni eklediğiniz INSERT satırında dbo'ya sağ tıklayın. Müşteriler ve Tanıma Göz At'ı seçin.

    özeti tanımı

  7. Tabloda hangi sütunların olduğunu hızla görebilmeniz için tablo tanımı görüntülenir. Saklı yordamınızın deyimlerini kolayca tamamlamak için sütun listesine bakın. Saklı yordamın gövdesini tamamlamak için daha önce eklediğiniz INSERT deyimini oluşturmayı tamamlayın ve özet tanımı penceresini kapatın:

    INSERT INTO dbo.Customers (CustomerId, Name, Location, Email)
        SELECT CustomerId, Name, Location, Email
        FROM OPENJSON (@json_val)
        WITH(   CustomerId int, 
                Name nvarchar(50), 
                Location nvarchar(50), 
                Email nvarchar(50)
     )
    
  8. Sorgunun en altındaki EXECUTE komutunu silin (veya açıklama satırı ekleyin).

  9. Deyimin tamamı aşağıdaki kod gibi görünmelidir:

    -- Create a new stored procedure called 'setCustomer' in schema 'dbo'
    -- Drop the stored procedure if it already exists
    IF EXISTS (
    SELECT *
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE SPECIFIC_SCHEMA = N'dbo'
        AND SPECIFIC_NAME = N'setCustomer'
    )
    DROP PROCEDURE dbo.setCustomer
    GO
    -- Create the stored procedure in the specified schema
    CREATE PROCEDURE dbo.setCustomer
        @json_val nvarchar(max) 
    AS
        -- body of the stored procedure
        INSERT INTO dbo.Customers (CustomerId, Name, Location, Email)
        SELECT CustomerId, Name, Location, Email
        FROM OPENJSON (@json_val)
        WITH(   CustomerId int, 
                Name nvarchar(50), 
                Location nvarchar(50), 
                Email nvarchar(50)
        )
    GO
    
  10. setCustomer saklı yordamını oluşturmak için F5 tuşuna basın.

SetCustomer saklı yordamını test etmek için sorgu sonuçlarını JSON olarak kaydetmeyi kullanın

Önceki bölümde oluşturulan setCustomer saklı yordamı, JSON verilerinin @json_val parametresine geçirilmesini gerektirir. Bu bölümde, saklı yordamı test edebilmeniz için parametresine geçirmek üzere düzgün biçimlendirilmiş bir JSON bitinin nasıl alınabileceği gösterilmektedir.

  1. SUNUCULAR kenar çubuğunda dbo'ya sağ tıklayın. Müşteriler tablosuna tıklayın ve SELECT TOP 1000 Rows seçeneğine tıklayın.

  2. Sonuçlar görünümünde ilk satırı seçin, satırın tamamının seçili olduğundan emin olun (en soldaki sütunda 1 sayısına tıklayın) ve JSON Olarak Kaydet'i seçin.

  3. Dosyayı daha sonra silebilmek için klasörü hatırlayacağınız bir konumla değiştirin (örneğin masaüstü) ve Kaydet'e tıklayın. JSON biçimli dosya açılır.

    JSON olarak kaydet

  4. Düzenleyicide JSON verilerini seçin ve kopyalayın.

  5. Ctrl+N tuşlarına basarak yeni bir düzenleyici açın.

  6. Önceki adımlarda, setCustomer yordamına yapılan çağrıyı tamamlamak için düzgün biçimlendirilmiş verileri nasıl kolayca alabileceğiniz gösterilmektedir. SetCustomer yordamını test edebilmemiz için aşağıdaki kodun yeni müşteri ayrıntılarıyla aynı JSON biçimini kullandığını görebilirsiniz. deyimi, parametresini bildirmek ve yeni get ve set yordamlarını çalıştırmak için söz dizimini içerir. Önceki bölümden kopyalanan verileri yapıştırabilir ve aşağıdaki örnekle aynı olacak şekilde düzenleyebilir veya aşağıdaki deyimi sorgu düzenleyicisine yapıştırabilirsiniz.

    -- example to execute the stored procedure we just created
    declare @json nvarchar(max) =
    N'[
        {
            "CustomerId": 5,
            "Name": "Lucy",
            "Location": "Canada",
            "Email": "lucy0@adventure-works.com"
        }
    ]'
    
    EXECUTE dbo.setCustomer @json_val = @json
    GO
    
    EXECUTE dbo.getCustomer @ID = 5
    
  7. F5 tuşuna basarak betiği yürütebilirsiniz. Betik yeni bir müşteri ekler ve yeni müşterinin bilgilerini JSON biçiminde döndürür. Biçimlendirilmiş bir görünümü açmak için sonuda tıklayın.

    test sonucu

Sonraki adımlar

Bu öğreticide, şunların nasıl yapıldığını öğrendiniz:

  • Hızlı arama şeması nesneleri
  • Tablo verilerini düzenleme
  • Kod parçacıkları kullanarak T-SQL betiği yazma
  • Tanıma Göz At ve Tanıma Git'i kullanarak veritabanı nesnesi ayrıntıları hakkında bilgi edinin

En yavaş beş sorgu pencere öğesini etkinleştirmeyi öğrenmek için sonraki öğreticiyi tamamlayın: