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
SSIS Integration Runtime ve službě Azure Data Factory
Ve výrazech jsou identifikátory, které zahrnují sloupce a proměnné, k dispozici pro operaci. Výrazy můžou používat regulární a kvalifikované identifikátory.
Běžné identifikátory
Běžný identifikátor je identifikátor, který nepotřebuje žádné další kvalifikátory. Například MiddleName, sloupec v tabulce Kontakty databáze AdventureWorks , je běžný identifikátor.
Pojmenování běžných identifikátorů musí odpovídat těmto pravidlům:
První znak názvu musí být písmeno definované standardem Unicode 2.0 nebo podtržítkem (_).
Další znaky můžou být písmena nebo číslice definované ve standardu Unicode Standard 2.0, podtržítko (_), @, $a # znaky.
Důležité
Vložené mezery a speciální znaky, kromě těch uvedených, nejsou v běžných identifikátorech platné. Abyste mohli používat mezery a speciální znaky, musíte místo běžného identifikátoru použít kvalifikovaný identifikátor.
Kvalifikované identifikátory
Kvalifikovaný identifikátor je identifikátor oddělený hranatými závorkami. Identifikátor může vyžadovat oddělovač, protože název identifikátoru obsahuje mezery nebo protože název identifikátoru nezačíná písmenem nebo podtržítkem. Například název sloupce Middle Name musí být kvalifikovaný závorkami a zapsán jako [Middle Name] ve výrazu.
Pokud název identifikátoru obsahuje mezery nebo pokud název není platným názvem běžného identifikátoru, musí být identifikátor kvalifikovaný. Vyhodnocovač výrazů používá otevírací a zavírací hranaté závorky ([]) k určení identifikátorů. Hranaté závorky se umístí na první a poslední pozici v řetězci. Například identifikátor 5$> se změní na [5$>]. Hranaté závorky lze použít s názvy sloupců, názvy proměnných a názvy funkcí.
Pokud vytváříte výrazy pomocí dialogových oken návrháře SSIS, jsou regulární identifikátory automaticky uzavřeny v hranatých závorkách. Hranaté závorky jsou však vyžadovány pouze v případě, že název obsahuje neplatné znaky. Například sloupec s názvem MiddleName je platný bez závorek.
Nelze odkazovat na názvy sloupců, které obsahují hranaté závorky ve výrazech. Například sloupec s názvem Sloupec[1] nelze použít ve výrazu. Chcete-li sloupec použít ve výrazu, musí být přejmenován na název bez závorek.
Identifikátory rodokmenu
Výrazy můžou používat identifikátory rodokmenu k odkazování na sloupce. Identifikátory rodokmenu se při vytváření balíčku přiřazují automaticky. Identifikátor původu pro sloupec můžete zobrazit na kartě Vlastnosti sloupce v dialogovém okně Rozšířený editor v návrháři SSIS.
Pokud odkazujete na sloupec pomocí jeho identifikátoru rodokmenu, musí identifikátor obsahovat předponu znaku libry (#). Například sloupec s identifikátorem linie dat 147 musí být odkazován jako #147.
Pokud se výraz úspěšně parsuje, vyhodnocovače výrazů nahradí identifikátory rodokmenu názvy sloupců v dialogovém okně.
Jedinečné názvy sloupců
Více součástí použitých v balíčku může vystavit sloupce, které mají stejný název. Pokud se tyto sloupce používají ve výrazech, musí být před úspěšnou analýzou výrazů nejednoznačné. Vyhodnocovač výrazů podporuje tečkovanou notaci pro identifikaci zdroje sloupce. Například dva sloupce s názvem Age se stanou FlatFileSource.Age a OLEDBSource.Age, které označují, že jejich zdroje jsou FlatFileSource nebo OLEDBSource. Analyzátor považuje plně kvalifikovaný název za název jednoho sloupce.
Názvy komponentů a názvy sloupců jsou kvalifikovány odděleně. Následující příklady ukazují platné použití závorek v tečkované notaci:
Název zdrojové komponenty obsahuje mezery.
[MySo urce].AgePrvní znak v názvu sloupce není platný.
MySource.[#Age]Zdrojová komponenta a názvy sloupců obsahují neplatné znaky.
[MySource?].[#Age]
Důležité
Pokud jsou oba prvky v tečkované notaci uzavřeny v jedné dvojici závorek, vyhodnocovač výrazů interpretuje dvojici jako jeden identifikátor, nikoli jako kombinaci zdroje a sloupce.
Proměnné ve výrazech
Proměnné, pokud jsou odkazovány ve výrazech, musí obsahovat předponu @. Například na proměnnou Counter se odkazuje pomocí @Counter. Znak @ není součástí názvu proměnné; identifikuje proměnnou pouze pro vyhodnocovače výrazů. Pokud vytváříte výrazy pomocí dialogových oken, která aplikace SSIS Designer poskytuje, znak @ se automaticky přidá do názvu proměnné. Není platné zahrnout mezery mezi znakem @ a názvem proměnné.
Názvy proměnných se řídí stejnými pravidly jako u jiných běžných identifikátorů:
První znak názvu musí být písmeno definované standardem Unicode 2.0 nebo podtržítkem (_).
Další znaky můžou být písmena nebo číslice definované ve standardu Unicode Standard 2.0, podtržítko (_), @, $a # znaky.
Pokud název proměnné obsahuje jiné znaky než uvedené, musí být proměnná uzavřena v hranatých závorkách. Názvy proměnných s mezerami musí být například uzavřeny v hranatých závorkách. Otevírací závorka následuje za znakem @. Například proměnná My Name je odkazována jako @[My Name]. Není správné zahrnout mezery mezi názvem proměnné a závorkami.
Poznámka:
V názvech uživatelem definovaných a systémových proměnných se rozlišují malá a velká písmena.
Jedinečné názvy proměnných
Integrační služby podporují vlastní proměnné a poskytují sadu systémových proměnných. Ve výchozím nastavení vlastní proměnné patří do oboru názvů Uživatel a systémové proměnné patří do oboru názvů System. Můžete vytvořit další obory názvů pro vlastní proměnné a aktualizovat názvy oborů názvů tak, aby vyhovovaly potřebám vaší aplikace. Editor výrazů uvádí proměnné v aktuálním rozsahu ve všech oborech názvů.
Všechny proměnné mají rozsah a patří do oboru názvů. Proměnná má obor balíčku nebo obor kontejneru nebo úkolu v balíčku. Tvůrce výrazů v nástroji SSIS Designer obsahuje pouze proměnné v platném rozsahu. Další informace naleznete v tématu Proměnné služby SSIS (Integration Services) a použití proměnných v balíčcích.
Proměnné použité ve výrazech musí mít jedinečné názvy vyhodnocovače výrazů, aby se výraz správně vyhodnotil. Pokud balíček používá více proměnných se stejným názvem, musí se jejich obory názvů lišit. Integrační služby poskytují operátor pro rozlišení oboru názvů, který se skládá ze dvou dvojteček (::), pro kvalifikaci proměnné pomocí jejího oboru názvů. Následující výraz například používá dvě proměnné s názvem Count; jeden patří do oboru názvů User a jeden do oboru názvů MyNamespace .
@[User::Count] > @[MyNamespace::Count]
Důležité
Aby vyhodnocovač výrazů rozpoznal proměnnou, je nutné uzavřít kombinaci oboru názvů a kvalifikovaného názvu proměnné v hranatých závorkách.
Pokud je hodnota Count v oboru názvů User 10 a hodnota Count in MyNamespace je 2, výraz se vyhodnotí jako true , protože vyhodnocovače výrazu rozpozná dvě různé proměnné.
Pokud názvy proměnných nejsou jedinečné, nedojde k žádné chybě. Místo toho vyhodnocovače výrazů používá k vyhodnocení výrazu pouze jednu instanci proměnné a vrátí nesprávný výsledek. Například následující výraz byl určen k porovnání hodnot (10 a 2) pro dvě samostatné proměnné Count , ale výraz se vyhodnotí jako nepravda , protože vyhodnocovač výrazů používá stejnou instanci proměnné Count dvakrát.
@Count > @Count