Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
In dit onderwerp worden de Transact-SQL instructies en syntaxiselementen beschreven die worden ondersteund door IntelliSense in SQL Server.
Verklaringen die worden ondersteund door IntelliSense
In SQL Server ondersteunt IntelliSense alleen de meest gebruikte Transact-SQL-instructies. Sommige algemene voorwaarden van de Database Engine-queryeditor kunnen verhinderen dat IntelliSense functioneert. Zie Problemen met IntelliSense (SQL Server Management Studio) oplossen voor meer informatie.
Opmerking
IntelliSense is niet beschikbaar voor versleutelde databaseobjecten, zoals versleutelde opgeslagen procedures of door de gebruiker gedefinieerde functies. Help en Snelle informatie over parameters zijn niet beschikbaar voor de parameters van uitgebreide opgeslagen procedures en door de gebruiker gedefinieerde clr-integratietypen.
SELECT-instructie
De Database Engine Query-editor biedt IntelliSense-ondersteuning voor de volgende syntaxiselementen in de SELECT-instructie:
SELECTEREN
WAAR
VAN
SORTEREN OP
HEBBEN
UNIE
VOOR
GROEP OP
BOVEN
OPTIE (hint)
Aanvullende Transact-SQL-instructies die worden ondersteund
De Database Engine Query-editor biedt ook IntelliSense-ondersteuning voor Transact-SQL instructies die worden weergegeven in de volgende tabel.
Transact-SQL-verklaring | Ondersteunde syntaxis | Uitzonderingen |
---|---|---|
INVOEGEN | Alle syntaxis, met uitzondering van de execute_statement component. | Geen |
UPDATE | Alle syntaxis. | Geen |
VERWIJDEREN | Alle syntaxis. | Geen |
DECLARE @local_variable | Alle syntaxis. | Geen |
SET @local_variable | Alle syntaxis. | Geen |
EXECUTEREN | Uitvoering van door de gebruiker gedefinieerde opgeslagen procedures, door het systeem opgeslagen procedures, door de gebruiker gedefinieerde functies en systeemfuncties. | Geen |
TABEL MAKEN | Alle syntaxis. | Geen |
VIEW AANMAKEN | Alle syntaxis. | Geen |
PROCEDURE MAKEN | Alle syntaxis. | Er is geen IntelliSense-ondersteuning voor de EXTERNAL NAME-clausule. In de AS-clausule ondersteunt IntelliSense alleen de instructies en syntaxis die in dit onderwerp zijn opgesomd. |
ALTER PROCEDURE | Alle syntaxis | Er is geen IntelliSense-ondersteuning voor de EXTERNAL NAME-clausule. In de AS-clausule ondersteunt IntelliSense alleen de instructies en syntaxis die in dit onderwerp zijn opgesomd. |
GEBRUIK | Alle syntaxis. | Geen |
IntelliSense in ondersteunde verklaringen
IntelliSense in de database-enginequery-editor ondersteunt de volgende syntaxiselementen wanneer deze worden gebruikt in een van de ondersteunde Transact-SQL-instructies:
Alle jointypen, waaronder APPLY
PIVOT en UNPIVOT
Verwijzingen naar de volgende databaseobjecten:
Databases en schema's
Tabellen, weergaven, tabelwaardefuncties en tabelexpressies
Kolommen
Procedures en procedureparameters
Scalaire functies en scalaire expressies
Lokale variabelen
Algemene tabelexpressies (CTE)
Databaseobjecten waarnaar alleen wordt verwezen in CREATE- of ALTER-instructies in het script of de batch, maar die niet bestaan in de database omdat het script of de batch nog niet is uitgevoerd. Deze objecten zijn als volgt:
Tabellen en procedures die zijn opgegeven in een CREATE TABLE- of CREATE PROCEDURE-instructie in het script of de batch.
Wijzigingen in tabellen en procedures die zijn opgegeven in een ALTER TABLE- of ALTER PROCEDURE-instructie in het script of de batch.
Opmerking
IntelliSense is niet beschikbaar voor de kolommen van een CREATE VIEW-instructie totdat de INSTRUCTIE CREATE VIEW is uitgevoerd.
IntelliSense is niet beschikbaar gemaakt voor de eerder vermelde elementen wanneer ze worden gebruikt in andere Transact-SQL instructies. Er is bijvoorbeeld IntelliSense-ondersteuning voor kolomnamen die worden gebruikt in een SELECT-instructie, maar niet voor kolommen die worden gebruikt in de instructie CREATE FUNCTION.
Voorbeelden
Binnen een Transact-SQL-script of batch ondersteunt IntelliSense in de Database Engine Query Editor alleen de instructies en syntaxis zoals in dit onderwerp vermeld. In de volgende Transact-SQL codevoorbeelden ziet u welke instructies en syntaxiselementen in IntelliSense worden ondersteund. In de volgende batch is IntelliSense bijvoorbeeld beschikbaar voor de SELECT
instructie wanneer deze zelf wordt gecodeerd, maar niet wanneer de SELECT
in een CREATE FUNCTION
instructie is opgenomen.
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
Deze functionaliteit is ook van toepassing op de sets van Transact-SQL-instructies in de AS-component van een CREATE PROCEDURE- of ALTER PROCEDURE-instructie.
Binnen een Transact-SQL script of batch ondersteunt IntelliSense objecten die zijn opgegeven in een CREATE- of ALTER-instructie; deze objecten bestaan echter niet in de database omdat de instructies niet zijn uitgevoerd. U kunt bijvoorbeeld de volgende code invoeren in de Query-editor:
USE MyTestDB;
GO
CREATE TABLE MyTable
(PrimaryKeyCol INT PRIMARY KEY,
FirstNameCol NVARCHAR(50),
LastNameCol NVARCHAR(50));
GO
SELECT
Nadat u hebt getypt SELECT
, worden intelliSense primaryKeyCol, FirstNameCol en LastNameCol als mogelijke elementen in de selectielijst weergegeven, zelfs als het script nog niet is uitgevoerd en MyTable
nog niet bestaat in MyTestDB
.