共用方式為


如何:使用查詢建立新的資料庫物件

如果您想要使用指令碼建立或編輯檢視表、預存程序、函數、觸發程序或使用者定義型別,可以使用 Transact-SQL 編輯器。 Transact-SQL 編輯器提供了 IntelliSense 和其他語言支援。 如需詳細資訊,請參閱使用 Transact-SQL 編輯器,編輯及執行指令碼

使用 [檢視程式碼] 捷徑功能表開啟連線的資料庫或專案中的資料庫實體時,會叫用 Transact-SQL 編輯器。 從 [SQL Server 物件總管] 使用 [新增查詢] 快顯功能表,或將新的指令碼物件加入至資料庫專案時,也會自動開啟這個編輯器。 如果您尚未連線到資料庫,但想要對其執行查詢,則也可以使用 [新增查詢連線] 對話方塊 (透過選取 [SQL] 功能表中的 [Transact-SQL 編輯器] 功能表),連線到資料庫並啟動 Transact-SQL 編輯器。

使用 Transact-SQL 查詢建立新的資料表

  1. 以滑鼠右鍵按一下 [Trade] 資料庫節點,再選取 [新增查詢]。

  2. 在指令碼窗格中,貼入下列程式碼:

    
    CREATE TABLE [dbo].[Fruits] (  
        [Id]         INT NOT NULL,  
        [Perishable] BIT DEFAULT ((1)) NULL,  
        PRIMARY KEY CLUSTERED ([Id] ASC),  
        FOREIGN KEY ([Id]) REFERENCES [dbo].[Products] ([Id])   
    );  
    
  3. 按一下 Transact-SQL 編輯器工具列中的 [執行查詢] 按鈕,執行這個查詢。

  4. 以滑鼠右鍵按一下 [SQL Server 物件總管] 中的 [Trade] 資料庫,然後選取 [重新整理]。 請注意,新的 [Fruits] 資料表已經加入至資料庫。

若要建立新的函式

  1. 用以下程式碼取代目前 Transact-SQL 編輯器中的程式碼:

    
    CREATE FUNCTION [dbo].GetProductsBySupplier  
    (  
    @SupplierId int  
    )  
    RETURNS @returntable TABLE   
    (  
    [Id] int NOT NULL,   
    [Name] NVARCHAR (128) NOT NULL,  
    [Shelflife] INT NOT NULL,  
    [SupplierId] INT NOT NULL,  
    [CustomerId] INT NOT NULL  
    )  
    AS  
    BEGIN  
    INSERT @returntable  
    SELECT *  from Products p  
    where p.SupplierId = @SupplierId  
    RETURN   
    END  
    

    這個函式會傳回 Products 資料表中所有 SupplierId 等於指定之參數的資料列。 按一下 Transact-SQL 編輯器工具列中的 [執行查詢] 按鈕,執行這個查詢。

  2. 在 [SQL Server 物件總管] 中,於 [Trade] 節點底下,展開 [可程式性] 和 [函式] 節點。 您可以在 [資料表值函式] 底下找到剛才建立的新函式。

建立新的檢視表

  1. 用以下程式碼取代目前 Transact-SQL 編輯器中的程式碼。 然後,按一下編輯器上方的 [執行查詢] 按鈕,執行這個查詢。

    CREATE VIEW [dbo].PerishableFruits   
    AS SELECT p.Id, p.Name FROM dbo.Products p  
    join dbo.Fruits f on f.Id = p.Id  
    where f.Perishable = 1  
    
  2. 在 [SQL Server 物件總管] 中,於 [Trade] 節點底下,展開 [檢視] 節點以找出您剛才建立的新檢視。

另請參閱

管理資料表、關聯性及修正錯誤
使用 Transact-SQL 編輯器,編輯及執行指令碼