Aracılığıyla paylaş


IntelliSense Tarafından Desteklenen Transact-SQL Sözdizimi

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrnekAzure Synapse AnalyticsAnalytics Platformu Sistemi (PDW)

Bu konuda, SQL Server'da IntelliSense tarafından desteklenen Transact-SQL deyimleri ve söz dizimi öğeleri açıklanmaktadır.

IntelliSense Tarafından Desteklenen İfadeler

SQL Server'da IntelliSense yalnızca en yaygın kullanılan Transact-SQL deyimlerini destekler. Bazı genel Veritabanı Altyapısı Sorgu Düzenleyicisi koşulları IntelliSense'in çalışmasını engelleyebilir. Daha fazla bilgi için bkz. IntelliSense (SQL Server Management Studio) sorunlarını giderme.

Not

IntelliSense, şifrelenmiş saklı yordamlar veya kullanıcı tanımlı işlevler gibi şifrelenmiş veritabanı nesneleri için kullanılamaz. Genişletilmiş saklı yordamların ve CLR Tümleştirmesi kullanıcı tanımlı türlerinin parametreleri için parametre yardımı ve Hızlı Bilgi kullanılamaz.

SELECT Deyimi

Veritabanı Altyapısı Sorgu Düzenleyicisi, SELECT deyimindeki aşağıdaki söz dizimi öğeleri için IntelliSense desteği sağlar:

SEÇ

NEREDE

KAYNAK

SIRALA

SAHİP OLMA

SENDİKA

İÇİN

GRUPLA

Yukarı

SEÇENEK (ipucu)

Desteklenen Ek Transact-SQL Beyanlar

Veritabanı Altyapısı Sorgu Düzenleyicisi, aşağıdaki tabloda gösterilen Transact-SQL deyimleri için IntelliSense desteği de sağlar.

Transact-SQL deyimi Desteklenen söz dizimi Özel durum
ekle execute_statement yan tümcesi hariç, tüm söz dizimi. Hiç kimse
güncelleme Tüm sözdizimi kuralları. Hiç kimse
DELETE Tüm sözdizimi kuralları. Hiç kimse
DECLARE @local_variable Tüm sözdizimi kuralları. Hiç kimse
SET @local_variable Tüm sözdizimi kuralları. Hiç kimse
ÇALIŞTIR Kullanıcı tanımlı saklı yordamların, sistem saklı yordamlarının, kullanıcı tanımlı işlevlerin ve sistem işlevlerinin yürütülmesi. Hiç kimse
TABLO OLUŞTUR Tüm sözdizimi kuralları. Hiç kimse
CREATE VIEW Tüm sözdizimi kuralları. Hiç kimse
PROCEDÜR OLUŞTUR Tüm sözdizimi kuralları. EXTERNAL NAME yan tümcesi için IntelliSense desteği yoktur.

AS yan tümcesinde IntelliSense yalnızca bu konuda listelenen deyimleri ve söz dizimini destekler.
DEĞİŞTİR PROSEDÜR Tüm sözdizimi EXTERNAL NAME yan tümcesi için IntelliSense desteği yoktur.

AS yan tümcesinde IntelliSense yalnızca bu konuda listelenen deyimleri ve söz dizimini destekler.
KULLANMAK Tüm sözdizimi kuralları. Hiç kimse

Desteklenen Deyimlerde IntelliSense

Veritabanı Altyapısı Sorgu Düzenleyicisi'ndeki IntelliSense, desteklenen Transact-SQL deyimlerinden birinde kullanıldıklarında aşağıdaki söz dizimi öğelerini destekler:

  • APPLY'yi de içeren tüm birleştirme türleri

  • PIVOT ve UNPIVOT

  • Aşağıdaki veritabanı nesnelerine başvurular:

    • Veritabanları ve şemalar

    • Tablolar, görünümler, tablo-değerli fonksiyonlar ve tablo ifadeleri

    • Sütun

    • Yordamlar ve yordam parametreleri

    • Skaler işlevler ve skaler ifadeler

    • Yerel değişkenler

    • Ortak tablo ifadeleri (CTE)

  • Betik veya toplu işte yalnızca CREATE veya ALTER deyimlerinde başvurulan, ancak betik veya toplu iş henüz çalıştırılmamış olduğundan veritabanında mevcut olmayan veritabanı nesneleri. Bu nesneler aşağıdaki gibidir:

    • Betikte veya toplu işlemde CREATE TABLE veya CREATE PROCEDURE deyimlerinde belirtilen tablolar ve prosedürler.

    • Betikte veya toplu işlemde ALTER TABLE veya ALTER PROCEDURE deyiminde belirtilen tablo ve yordamlarda yapılan değişiklikler.

    Not

    Create VIEW deyimi yürütülene kadar, Create VIEW deyiminin sütunları için IntelliSense kullanılamaz.

IntelliSense, daha önce listelenen öğeler diğer Transact-SQL ifadelerinde kullanıldığında sağlanmaz. Örneğin, SELECT cümlesinde kullanılan sütun adları için IntelliSense desteği vardır, ancak CREATE FUNCTION cümlesinde kullanılan sütunlar için yoktur.

Örnekler

Bir Transact-SQL betiği veya toplu iş içinde, Veritabanı Altyapısı Sorgu Düzenleyicisi'ndeki IntelliSense yalnızca bu başlıkta listelenen deyimleri ve söz dizimini destekler. Aşağıdaki Transact-SQL kod örnekleri IntelliSense'in hangi deyimleri ve söz dizimi öğelerini desteklediğini gösterir. Örneğin, aşağıdaki toplu işlemde SELECT ifadesi tek başına kodlandığında IntelliSense kullanılabilir, ancak SELECT ifadesi bir CREATE FUNCTION ifadesine dahil edildiğinde kullanılamaz.

USE AdventureWorks2022;  
GO  
SELECT Name  
FROM Production.Product  
WHERE Name LIKE N'Road-250%' and Color = N'Red';  
GO  
CREATE FUNCTION Production.ufn_Red250 ()  
RETURNS TABLE  
AS  
RETURN   
(  
    SELECT Name  
    FROM AdventureWorks2022.Production.Product  
    WHERE Name LIKE N'Road-250%'  
      AND Color = N'Red'  
);GO  

Bu işlevsellik, CREATE PROCEDURE veya ALTER PROCEDURE deyiminin AS yan tümcesindeki Transact-SQL deyim kümeleri için de geçerlidir.

IntelliSense, Transact-SQL bir betik veya toplu iş içinde CREATE veya ALTER deyiminde belirtilen nesneleri destekler; ancak deyimleri yürütülemediğinden bu nesneler veritabanında mevcut değildir. Örneğin, Sorgu Düzenleyicisi'ne aşağıdaki kodu girebilirsiniz:

USE MyTestDB;  
GO  
CREATE TABLE MyTable  
    (PrimaryKeyCol   INT PRIMARY KEY,  
    FirstNameCol      NVARCHAR(50),  
   LastNameCol       NVARCHAR(50));  
GO  
SELECT   

yazdıktan SELECT sonra, senaryo çalıştırılmamış ve henüz içinde mevcut değilse bile IntelliSense, seçenek listesinde olası öğeler olarak PrimaryKeyCol, FirstNameCol ve LastNameCol listelerini MyTestDB listeler.