Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Toto téma popisuje příkazy Transact-SQL a elementy syntaxe podporované technologií IntelliSense na SQL Serveru.
Příkazy podporované funkcí IntelliSense
Technologie IntelliSense v SQL Serveru podporuje pouze nejčastěji používané příkazy Transact-SQL. Některé obecné podmínky Editoru dotazů databázového stroje můžou zabránit fungování technologie IntelliSense. Další informace najdete v tématu řešení potíží s technologií IntelliSense (SQL Server Management Studio).
Poznámka
IntelliSense není k dispozici pro šifrované databázové objekty, jako jsou šifrované uložené procedury nebo uživatelem definované funkce. Nápověda k parametrům a Rychlé informace nejsou k dispozici pro parametry rozšířených uložených procedur a uživatelsky definovaných typů integrace CLR.
Příkaz SELECT
Editor dotazů databázového stroje poskytuje podporu IntelliSense pro následující prvky syntaxe v příkazu SELECT:
SELECT
KDE
OD
SEŘADIT PODLE
MAJÍCÍ
UNIE
PRO
SESKUPIT PODLE
NEJLEPŠÍ
MOŽNOST (nápověda)
Podporované další příkazy Transact-SQL
Editor dotazů databázového stroje také poskytuje podporu Technologie IntelliSense pro příkazy Transact-SQL, které jsou uvedeny v následující tabulce.
| Příkaz Transact-SQL | Podporovaná syntaxe | Výjimky |
|---|---|---|
| VLOŽIT | Veškerá syntaxe s výjimkou klauzule execute_statement. | Žádný |
| Aktualizace | Veškerá syntaxe. | Žádný |
| ODSTRANIT | Veškerá syntaxe. | Žádný |
| DECLARE @local_variable | Veškerá syntaxe. | Žádný |
| SET @local_variable | Veškerá syntaxe. | Žádný |
| PROVÉST | Provádění uživatelem definovaných uložených procedur, systémových uložených procedur, uživatelem definovaných funkcí a systémových funkcí. | Žádný |
| Vytvořit tabulku (CREATE TABLE) | Veškerá syntaxe. | Žádný |
| VYTVOŘIT NÁHLED | Veškerá syntaxe. | Žádný |
| VYTVOŘIT PROCEDURU | Veškerá syntaxe. | Pro technologii IntelliSense není dostupná podpora pro klauzuli EXTERNAL NAME. V klauzuli AS intelliSense podporuje pouze příkazy a syntaxi uvedené v tomto tématu. |
| ALTER PROCEDURE | Veškerá syntaxe | Pro technologii IntelliSense není dostupná podpora pro klauzuli EXTERNAL NAME. V klauzuli AS intelliSense podporuje pouze příkazy a syntaxi uvedené v tomto tématu. |
| POUŽÍVAT | Veškerá syntaxe. | Žádný |
IntelliSense v podporovaných příkazech
IntelliSense v Editoru dotazů databázového stroje podporuje následující prvky syntaxe, pokud se používají v jednom z podporovaných příkazů Transact-SQL:
Všechny typy spojení, včetně APPLY
PIVOT a UNPIVOT
Odkazy na následující databázové objekty:
Databáze a schémata
Tabulky, zobrazení, funkce s hodnotami tabulky a výrazy tabulky
Sloupce
Procedury a jejich parametry
Skalární funkce a skalární výrazy
Místní proměnné
Běžné výrazy tabulek (CTE)
Databázové objekty odkazované pouze v příkazech CREATE nebo ALTER ve skriptu nebo dávce, které však v databázi neexistují, protože skript nebo dávka ještě nebyly spuštěny. Tyto objekty jsou následující:
Tabulky a procedury zadané v příkazu CREATE TABLE nebo CREATE PROCEDURE ve skriptu nebo dávce
Změny tabulek a procedur zadaných v příkazu ALTER TABLE nebo ALTER PROCEDURE ve skriptu nebo dávce
Poznámka
IntelliSense není k dispozici pro sloupce příkazu CREATE VIEW, dokud se nespustí příkaz CREATE VIEW.
IntelliSense není k dispozici pro dříve uvedené prvky, pokud se používají v jiných příkazech Transact-SQL. Existuje například podpora IntelliSense pro názvy sloupců, které se používají v příkazu SELECT, ale ne pro sloupce, které se používají v příkazu CREATE FUNCTION.
Příklady
V rámci skriptu nebo dávky Transact-SQL podporuje IntelliSense v dotazovacím editoru databázového stroje pouze příkazy a syntaxi uvedené v tomto tématu. Následující Transact-SQL příklady kódu ukazují, jaké příkazy a prvky syntaxe IntelliSense podporuje. Například v následující dávce je technologie IntelliSense k dispozici pro SELECT příkaz, pokud je kódována samostatně, ale ne v případě, že SELECT je obsažena v CREATE FUNCTION příkazu.
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
Tato funkce platí také pro sady příkazů Transact-SQL v klauzuli AS příkazu CREATE PROCEDURE nebo ALTER PROCEDURE.
V rámci Transact-SQL skriptu nebo dávky technologie IntelliSense podporuje objekty, které byly zadány v příkazu CREATE nebo ALTER; Tyto objekty však v databázi neexistují, protože příkazy nebyly provedeny. V Editoru dotazů můžete například zadat následující kód:
USE MyTestDB;
GO
CREATE TABLE MyTable
(PrimaryKeyCol INT PRIMARY KEY,
FirstNameCol NVARCHAR(50),
LastNameCol NVARCHAR(50));
GO
SELECT
Po zadání SELECT systém IntelliSense vypíše jako možné elementy select seznamu PrimaryKeyCol, FirstNameCol a LastNameCol, a to i v případě, že skript nebyl spuštěn a MyTable ještě neexistuje v MyTestDB.