Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL Database w Microsoft Fabric
Zmienne SQLCMD są używane w projektach SQL do tworzenia dynamicznie zamienialnych tokenów w obiektach SQL i skryptach. Wartości tych zmiennych są ustawiane w czasie wdrażania i mogą służyć do dynamicznego ustawiania wartości w projekcie SQL. Wartości zmiennych SQLCMD można ustawić w akcji publikowania lub za pośrednictwem profilu publikowania.
Przykład i składnia pliku projektu SQL
Zmienne SQLCMD są definiowane w pliku .sqlproj
w elemencie <ItemGroup>
. W tym przykładzie zmienna EnvironmentName
jest definiowana z wartością testing
domyślną :
...
<ItemGroup>
<SqlCmdVariable Include="EnvironmentName">
<DefaultValue>testing</DefaultValue>
<Value>$(SqlCmdVar__1)</Value>
</SqlCmdVariable>
</ItemGroup>
</Project>
Element DefaultValue
jest opcjonalny. Po podaniu wartości domyślnej jest ona używana tylko do ładowania w oknie dialogowym publikowania narzędzi graficznych dla projektów SQL. Wartość domyślna nie jest kompilowana do pliku .dacpac
i wdrożenie z poziomu wiersza polecenia bez wartości określonych przez profil publikowania lub opcji /v
do określenia wartości skutkuje pustymi wartościami dla zmiennych SQLCMD.
Używanie zmiennych SQLCMD w obiektach SQL
Zmienne SQLCMD mogą być używane w obiektach SQL i skryptach, otaczając nazwę zmiennej składnią w formacie $(variableName)
. Na przykład następujący skrypt SQL używa zmiennej do kontrolowania $(EnvironmentName)
zachowania skryptu:
IF '$(EnvironmentName)' = 'testing'
BEGIN
-- do something
END
Używanie zmiennych SQLCMD w akcjach publikowania
Zmienne SQLCMD można ustawiać podczas wdrażania przy użyciu opcji /v
w narzędziu wiersza polecenia SqlPackage. Na przykład następujące polecenie ustawia zmienną na EnvironmentName
production
:
sqlpackage /Action:Publish /SourceFile:AdventureWorks.dacpac /TargetConnectionString:{connection_string_here} /v:EnvironmentName=production
Dodawanie i używanie zmiennych SQLCMD
Aby dodać zmienną SQLCMD do projektu SQL w programie Visual Studio, kliknij prawym przyciskiem myszy projekt w Eksploratorze rozwiązań i wybierz polecenie Właściwości. Na karcie Zmienne SQLCMD okna właściwości określ nazwę zmiennej i opcjonalnie wartość domyślną.
Po zdefiniowaniu zmiennej można jej używać w skryptach SQL, opakowując nazwę zmiennej w $(variableName)
składni.
Podczas publikowania projektu z programu Visual Studio zmienne SQLCMD są ustawiane w oknie dialogowym publikowania. Użyj przycisku Załaduj wartości , aby załadować wartości domyślne z projektu SQL do okna dialogowego.
Aby dodać zmienną SQLCMD do projektu SQL w programie Visual Studio, kliknij prawym przyciskiem myszy projekt w Eksploratorze rozwiązań i wybierz polecenie Właściwości. W sekcji Zmienne SQLCMD okna właściwości określ nazwę zmiennej i opcjonalnie wartość domyślną.
Po zdefiniowaniu zmiennej można jej używać w skryptach SQL, opakowując nazwę zmiennej w $(variableName)
składni.
Podczas publikowania projektu z programu Visual Studio zmienne SQLCMD są ustawiane w oknie dialogowym publikowania. Użyj przycisku Załaduj wartości , aby załadować wartości domyślne z projektu SQL do okna dialogowego.
Aby dodać zmienną SQLCMD do projektu SQL w rozszerzeniu Sql Database Projects, kliknij prawym przyciskiem myszy węzeł Zmienne SQLCMD w projekcie w widoku Projekty bazy danych i wybierz polecenie Dodaj zmienną SQLCMD. Określ nazwę zmiennej i opcjonalnie wartość domyślną.
Po zdefiniowaniu zmiennej można jej używać w skryptach SQL, opakowując nazwę zmiennej w $(variableName)
składni.
Podczas publikowania projektu z rozszerzenia SQL Database Projects wartości zmiennych SQLCMD są automatycznie ładowane z wartości domyślnych. Po wyświetleniu monitu o zmodyfikowanie wartości podczas procesu publikowania można podać alternatywne wartości.
Aby dodać zmienną SQLCMD do projektu SQL, dodaj <ItemGroup>
element do .sqlproj
pliku z elementem <SqlCmdVariable>
dla każdej zmiennej. Element <SqlCmdVariable>
zawiera nazwę zmiennej, wartość domyślną i wartość, którą można ustawić w czasie wdrażania.
<ItemGroup>
<SqlCmdVariable Include="EnvironmentName">
<DefaultValue>testing</DefaultValue>
<Value>$(SqlCmdVar__1)</Value>
</SqlCmdVariable>
</ItemGroup>
Po zdefiniowaniu zmiennej można jej używać w skryptach SQL, opakowując nazwę zmiennej w $(variableName)
składni.
Podczas wdrażania projektu z poziomu wiersza polecenia zmienne SQLCMD można ustawić przy użyciu /v
opcji w narzędziu wiersza polecenia SqlPackage .
Przykład:
SqlPackage /Action:Publish /SourceFile:AdventureWorks.dacpac /TargetConnectionString:{connection_string_here} /v:EnvironmentName=production
Powiązana treść
- Parametry, właściwości i zmienne SQLCMD dla SqlPackage Publish
- Samouczek: tworzenie i wdrażanie projektu SQL
- ustawienia projektu bazy danych