Поделиться через


Справочник по интерфейсу командной строки SqlPackage

SqlPackage — это программа командной строки для переносимости баз данных и развертываний в средах Windows, Linux и macOS. Интерфейс командной строки SqlPackage анализирует каждый вызов для параметров, свойств и переменных SQLCMD.

SqlPackage {parameters} {properties} {SQLCMD variables}
  • Параметры указывают действие для выполнения, исходные и целевые базы данных и другие общие параметры.
  • Свойства изменяют поведение действия по умолчанию.
  • Переменные SQLCMD передают значения переменным SQLCMD в исходном файле.

Чтобы создать команду SqlPackage, укажите действие и его дополнительные параметры. При необходимости добавьте свойства и переменные SQLCMD для дальнейшей настройки команды.

В следующем примере sqlPackage используется для создания .dacpac файла текущей схемы базы данных:

SqlPackage /Action:Extract /TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac" \
 /SourceServerName:"localhost" /SourceDatabaseName:"Contoso" \
 /p:IgnoreUserLoginMappings=True /p:Storage=Memory

Ниже приведены параметры из этого примера:

  • /Action:Extract
  • /TargetFile:"C:\sqlpackageoutput\output_current_version.dacpac"
  • /SourceServerName:"localhost"
  • /SourceDatabaseName:"Contoso"

Это свойства из этого примера:

  • /p:IgnoreUserLoginMappings=True
  • /p:Storage=Memory

Действия SqlPackage

Действие Description
Версия Возвращает номер сборки приложения SqlPackage.
извлечение Создает файл приложения уровня данных (.dacpac), содержащий схему или схему и пользовательские данные из подключенной базы данных SQL.
публикации Постепенно обновляет схему базы данных, чтобы она соответствовала схеме исходного .dacpac файла. Если база данных не существует на сервере, операция публикации создает ее. В противном случае обновляется существующая база данных.
экспорта Экспортирует подключенную базу данных SQL, включая схему базы данных и пользовательские данные, в BACPAC-файл (.bacpac).
импорт Импортирует данные схемы и таблицы из BACPAC-файла в новую пользовательную базу данных.
DeployReport Создает XML-отчет, представляющий изменения, которые будет предпринять действие публикации.
DriftReport Создает XML-отчет, представляющий изменения, примененные к зарегистрированной базе данных после последней регистрации.
скрипта создает скрипт добавочного обновления на языке Transact-SQL, который обновляет схему целевой базы данных до соответствия схеме базы данных-источника.

Заметка

Хотя идентификатор Microsoft Entra — это новое имя дляAzure Active Directory (Azure AD), чтобы предотвратить нарушение существующих сред, Azure AD по-прежнему остается в некоторых жестко закодированных элементах, таких как поля пользовательского интерфейса, поставщики подключений, коды ошибок и командлеты. В этой статье два имени являются взаимозаменяемыми.

Параметры

Некоторые параметры используются для действий SqlPackage. В следующей таблице перечислены параметры. Для получения дополнительных сведений используйте ссылки в заголовке таблицы, чтобы посетить определенные страницы действий.

Параметр Короткая форма извлечение публикации экспорта импорт DeployReport DriftReport скрипта
/AccessToken: /at Да Да Да Да Да Да Да
/ClientId: /cid нет Да нет нет нет нет нет
/DeployScriptPath: /dsp нет Да нет нет нет нет Да
/DeployReportPath: /drp нет Да нет нет нет нет Да
/Diagnostics: /d Да Да Да Да Да Да Да
/DiagnosticsFile: /df Да Да Да Да Да Да Да
/DiagnosticsPackageFile: /dpf нет Да нет Да нет нет нет
/MaxParallelism: /mp Да Да Да Да Да Да Да
/OutputPath: /op нет нет нет нет Да Да Да
/OverwriteFiles: /of Да Да Да нет Да Да Да
/Profile: /pr нет Да нет нет Да нет Да
/Properties: /p Да Да Да Да Да нет Да
/Quiet: /q Да Да Да Да Да Да Да
/Secret: /secr нет Да нет нет нет нет нет
/SourceConnectionString: /scs Да Да Да нет Да нет Да
/SourceDatabaseName: /sdn Да Да Да нет Да нет Да
/SourceEncryptConnection: /sec Да Да Да нет Да нет Да
/SourceFile: /sf нет Да нет Да Да нет Да
/SourcePassword: /sp Да Да Да нет Да нет Да
/SourceServerName: /ssn Да Да Да нет Да нет Да
/SourceTimeout: /st Да Да Да нет Да нет Да
/SourceTrustServerCertificate: /stsc Да Да Да нет Да нет Да
/SourceUser: /su Да Да Да нет Да нет Да
/TargetConnectionString: /tcs нет нет нет Да Да Да Да
/TargetDatabaseName: /tdn нет Да нет Да Да Да Да
/TargetEncryptConnection: /tec нет Да нет Да Да Да Да
/TargetFile: /tf Да нет Да нет Да нет Да
/TargetPassword: /tp нет Да нет Да Да Да Да
/TargetServerName: /tsn нет Да нет Да Да Да Да
/TargetTimeout: /tt нет Да нет Да Да Да Да
/TargetTrustServerCertificate: /ttsc нет Да нет Да Да Да Да
/TargetUser: /tu нет Да нет Да Да Да Да
/TenantId: /tid Да Да Да Да Да Да Да
/UniversalAuthentication: /ua Да Да Да Да Да Да Да
/Variables: /v нет нет нет нет Да нет Да

Свойства

Действия SqlPackage поддерживают множество свойств для изменения поведения действия по умолчанию. Добавьте /p:PropertyName=Value в командную строку для дополнительного использования свойств. Можно указать несколько свойств и указать некоторые свойства более одного раза. Например, можно использовать /p:TableData=Product /p:TableData=ProductCategory. Дополнительные сведения о свойствах см. на страницах конкретных действий.

Переменные SQLCMD

Переменные SQLCMD можно создавать в .dacpac файл из проекта SQL. Задайте эти переменные во время развертывания с помощью sqlPackage Publish или Script. Дополнительные сведения о добавлении переменных SQLCMD в проект SQL см. в расширении "Проекты баз данных SQL".

Команды служебной программы

Версия

Отображает версию sqlpackage как номер сборки. Используйте его в интерактивных запросах и в автоматизированных конвейерах.

SqlPackage /Version

Справка

Использование /? или /help:True отображение сведений об использовании SqlPackage.

SqlPackage /?

Для сведений о параметрах и свойствах, относящихся к конкретному действию, используйте параметр справки в дополнение к параметру этого действия.

SqlPackage /Action:Publish /?

Коды выхода

Команды SqlPackage возвращают следующие коды выхода:

  • 0 = успех
  • nonzero = failure