Von IntelliSense unterstützte Transact-SQL-Syntax
Dieses Thema beschreibt die Transact-SQL-Anweisungen und Syntaxelemente, die von Transact-SQL IntelliSense unterstützt werden.
Von IntelliSense unterstützte Anweisungen
Transact-SQL IntelliSense unterstützt nur die am häufigsten verwendeten Transact-SQL-Anweisungen. Einige allgemeine Bedingungen können verhindern, dass IntelliSense funktioniert. Weitere Informationen finden Sie unter Behandeln von Transact-SQL IntelliSense-Problemen.
Tipp
IntelliSense ist nicht für verschlüsselte Datenbankobjekte verfügbar, z. B. verschlüsselte gespeicherte Prozeduren oder benutzerdefinierte Funktionen. Für Parameter von erweiterten gespeicherten Prozeduren und benutzerdefinierten Typen für die CLR-Integration stehen die Funktionen "Parameterinfo" und "QuickInfo" nicht zur Verfügung.
SELECT-Anweisung
Der Transact-SQL-Editor stellt IntelliSense-Unterstützung für die folgenden Syntaxelemente in der SELECT-Anweisung bereit:
SELECT |
WHERE |
FROM |
ORDER BY |
HAVING |
UNION |
FOR |
GROUP BY |
TOP |
OPTION (Hinweis) |
Weitere unterstützte Transact-SQL-Anweisungen
Der Transact-SQL-Editor stellt zudem IntelliSense-Unterstützung für die in der folgenden Tabelle aufgeführten Transact-SQL-Anweisungen bereit.
Transact-SQL-Anweisung |
Unterstützte Syntax |
---|---|
INSERT |
Gesamte Syntax mit Ausnahme der execute_statement-Klausel. |
UPDATE |
Gesamte Syntax. |
DELETE |
Gesamte Syntax. |
DECLARE @local_variable |
Gesamte Syntax. |
SET @local_variable |
Gesamte Syntax. |
EXECUTE |
Ausführung von benutzerdefinierten gespeicherten Prozeduren, gespeicherten Systemprozeduren, benutzerdefinierten Funktionen und Systemfunktionen. |
CREATE TABLE |
Gesamte Syntax. |
CREATE VIEW |
Gesamte Syntax. |
CREATE PROCEDURE |
Gesamte Syntax mit den folgenden Ausnahmen:
|
ALTER PROCEDURE |
Gesamte Syntax mit den folgenden Ausnahmen:
|
USE |
Gesamte Syntax. |
IntelliSense in unterstützten Anweisungen
Transact-SQL IntelliSense im Transact-SQL-Editor unterstützt die folgenden Syntaxelemente, wenn sie in einer der unterstützten Transact-SQL-Anweisungen verwendet werden:
Alle Jointypen, einschließlich APPLY
PIVOT und UNPIVOT
Verweise auf die folgenden Datenbankobjekte:
Datenbanken und Schemas
Tabellen, Sichten, Tabellenwertfunktionen und Tabellenausdrücke
Spalten
Prozeduren und Prozedurparameter
Skalare Funktionen und Skalarausdrücke
Lokale Variablen
Allgemeine Tabellenausdrücke (CTE)
Datenbankobjekte, auf die nur in der CREATE-Anweisung oder der ALTER-Anweisung im Skript oder im Batch verwiesen wird, die aber nicht in der Datenbank vorhanden sind, da das Skript bzw. der Batch noch nicht ausgeführt wurde. Nachfolgend sind diese Objekte aufgeführt:
Tabellen und Prozeduren, die im Skript oder Batch in einer CREATE TABLE- oder CREATE PROCEDURE-Anweisung angegeben wurden.
Änderungen an Tabellen und Prozeduren, die im Skript oder Batch in einer ALTER TABLE- oder ALTER PROCEDURE-Anweisung angegeben wurden.
Tipp
IntelliSense ist nicht verfügbar für die Spalten einer CREATE VIEW-Anweisung, solange die CREATE VIEW-Anweisung nicht ausgeführt wurde.
IntelliSense wird für die zuvor genannten Elemente nicht bereitgestellt, wenn sie in anderen Transact-SQL-Anweisungen verwendet werden. Es ist z. B. IntelliSense-Unterstützung für Spaltennamen verfügbar, die in einer SELECT-Anweisung verwendet werden, nicht jedoch für Spaltennamen, die in der CREATE FUNCTION-Anweisung verwendet werden.
Beispiele
In einem Transact-SQL-Skript oder -Batch unterstützt IntelliSense im Transact-SQL-Editor nur die Anweisungen und Syntaxelemente, die in diesem Thema aufgeführt werden. Die folgenden Transact-SQL-Codebeispiele zeigen, welche Anweisungen und Syntaxelemente von IntelliSense unterstützt werden. Beispielsweise ist im folgenden Batch IntelliSense verfügbar für die SELECT-Anweisung, wenn diese eigencodiert ist, aber nicht, wenn SELECT in einer CREATE FUNCTION-Anweisung enthalten ist.
USE AdventureWorks;
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 AdventureWorks.Production.Product
WHERE Name LIKE N'Road-250%'
AND Color = N'Red'
);GO
Diese Funktionalität gilt auch für die Sätze von Transact-SQL-Anweisungen in der AS-Klausel einer CREATE PROCEDURE- oder ALTER PROCEDURE-Anweisung.
In einem Transact-SQL-Skript oder -Batch unterstützt IntelliSense Objekte, die in einer CREATE- oder ALTER-Anweisung angegeben sind. Allerdings sind diese Objekte nicht in der Datenbank vorhanden, da die Anweisungen nicht ausgeführt wurden. Sie können z. B. den folgenden Code im Transact-SQL-Editor eingeben:
USE MyTestDB;
GO
CREATE TABLE MyTable
(PrimaryKeyCol INT PRIMARY KEY,
FirstNameCol NVARCHAR(50),
LastNameCol NVARCHAR(50));
GO
SELECT
Wenn Sie SELECT eingegeben haben, listet IntelliSense PrimaryKeyCol, FirstNameCol und LastNameCol als mögliche Elemente in der Auswahlliste auf. Dies gilt auch, wenn das Skript nicht ausgeführt wurde und MyTable noch nicht in MyTestDB vorhanden ist.
Siehe auch
Andere Ressourcen
Übersicht über Transact-SQL IntelliSense
Verwenden des Transact-SQL-Trennzeichenvergleichs