Aracılığıyla paylaş


Görünüm oluşturma ve yordamlar depolanan

Mary erişebilir, artık TestData veritabanı, görünüm, saklı yordam gibi bazı veritabanı nesneleri oluşturmak ve sonra da bunları Mary erişim vermek isteyebilirsiniz.Bir görünümü saklı olan bir deyim ve saklı yordam bir veya daha çok Transact-SQL ifadeleri, yürütmek toplu olarak.

Görünümler, tablolar gibi sorgulanır ve parametre kabul.Saklı yordamlar, görünümler daha karmaşıktır.Saklı yordamlar, her iki giriş olabilir ve parametreleri için çıkış kodu, örneğin, EğER ve deyimleri WHILE akışını denetlemek için ifadeleri içerebilir.Tüm yinelenen eylemler veritabanında saklı yordamlar için uygulama programlama kullanışlıdır.

Bu örnekte, yalnızca iki sütun seçtiği bir görünüm oluşturmak için CREATE VIEW kullanacağı desteği tablo.Daha sonra oluşturmak için CREATE PROCEDURE kullanacağı bir saklı yordam fiyat parametre kabul eder ve yalnızca sahibin meşru olarak belirtilen parametre değerden maliyet ürünleri verir.

Bir görünüm oluşturmak için

  • Bir deyim yürütür ve adlarını ve Ürünlerimiz fiyatlarını kullanıcıya döndürür, çok basit bir görünümünü oluşturmak için aşağıdaki deyim yürütmek.

    CREATE VIEW vw_Names
       AS
       SELECT ProductName, Price FROM Products;
    GO
    

Görünüm sınayın.

  • Görünümler yalnızca tablolar gibi davranır.Kullanım bir SELECT bir görünüme erişebilmesini istiyorsanız deyim'ı tıklatın.

    SELECT * FROM vw_Names;
    GO
    

Saklı bir yordam oluşturmak için

  • Aşağıdaki deyim bir saklı yordam adı oluşturur. pr_Names, adlı bir girdi parametresini kabul eder. @VarPrice veri türü money. deyim saklı yordam yazdırır Products less than değiştirilirse giriş parametresi birleştirilmiş money içine veri türü bir varchar(10) karakter veri türü. Daha sonra yordamı çalıştırır bir SELECT deyim görünümü girdi parametresi bir parçası olarak geçirmeden WHERE yan tümce. Bu, giriş parametresi değerden maliyet tüm ürünleri verir.

    CREATE PROCEDURE pr_Names @VarPrice money
       AS
       BEGIN
          -- The print statement returns text to the user
          PRINT 'Products less than ' + CAST(@VarPrice AS varchar(10));
          -- A second statement starts here
          SELECT ProductName, Price FROM vw_Names
                WHERE Price < @varPrice;
       END
    GO
    

saklı yordam sınayın.

  • saklı yordam sınamak için , yazın ve sonra da aşağıdaki ifadeyi çalıştırın.Yordamı girilen iki ürün adlarını döndürmelidir Products Ders 1'tablosuyla olan bir fiyatı küçüktür 10.00.

    EXECUTE pr_Names 10.00;
    GO