SqlPackage.exe

 

Программа командной строки SqlPackage.exe автоматизирует следующие задачи разработки базы данных.

  • Extract (извлечение): создает файл моментального снимка базы данных (DACPAC-файл) из активной базы данных SQL Azure или SQL Server.

  • Export (экспорт): экспортирует активную базу данных, включая схему базы данных и пользовательские данные пользователя, из базы данных SQL Azure или SQL Server в пакет BACPAC (BACPAC-файл).

  • Import (импорт): импортирует данные схемы и таблиц из пакета BACPAC в новую пользовательскую базу данных в экземпляре SQL Server или в базе данных SQL Azure.

  • Publish (публикация): выполняет добавочное обновление схемы базы данных в соответствии со схемой исходного DACPAC-файла.Если база данных не существует на сервере, операция публикации создаст ее.В противном случае будет обновлена существующая база данных.

  • DeployReport: создает отчет в формате XML по изменениям, которые должны быть внесены в результате публикации.

  • DriftReport: создает отчет в формате XML по изменениям, которые были внесены в зарегистрированную базу данных со времени ее последней регистрации.

  • Скрипт: создает скрипт добавочного обновления на языке Transact-SQL, который обновляет схему целевой базы данных до соответствия схеме базы данных-источника.

Программа командной строки SqlPackage.exe позволяет указывать эти действия вместе с их параметрами и свойствами.

Синтаксис командной строки

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

SqlPackage {parameters}{properties}{SQLCMDVariables}

Решения распространенных проблем клиентов с базой данных SQL Azure, SQL Server Data Tools и SQL Server Management Studio см. в разделе Управление жизненным циклом базы данных.

Общие параметры

Общие параметры определяют работу программы SqlPackage.exe в целом.

Параметр Краткая форма Обязательное поле? Описание
/Help /? N Отображает инструкцию использования.
/Action:{Extract | DeployReport | DriftReport | Publish | Script | Export | Import | Pipe} /a:{Extract | DeployReport | DriftReport | Publish | Script | Export | Import | Pipe} Y Указывает действие, подлежащее выполнению.
/Quiet:{True | False} /q:{True | False} N Указывает, происходит ли подавление подробного отзыва.По умолчанию принимает значение False.
/OverwriteFiles:{True | False} /of:{True | False} N Указывает, должна ли программа sqlpackage.exe перезаписывать существующие файлы.Задание значения False приводит к тому, что программа sqlpackage.exe аварийно завершает действие при обнаружении существующего файла.По умолчанию применяется значение True.
@{file-path} None N Указывает путь к файлу ответов.

Исходные параметры.

В следующей таблице показаны параметры командной строки, которые SqlPackage.exe поддерживает при определении источников.

Параметр Краткая форма По умолчанию Описание
/SourceConnectionString:{string} /scs:{string} Неприменимо Указывает допустимую строку подключения SQL Server/Azure для базы данных-источника.Если этот параметр указан, ему будет отдаваться предпочтение перед всеми остальными параметрами источника.
/SourceDatabaseName:{string} /sdn:{string} Неприменимо Определяет имя базы данных-источника.
/SourceUser:{value} /su:{value} Неприменимо Для сценариев разработки для SQL Server указывает пользователя SQL Server, от имени которого производится доступ к базе данных.
/SourceEncryptConnection:{True|False} /sec:{ True | False} False Указывает, следует ли использовать шифрование SQL для соединения с базой данных-источником.
/SourceFile: { string } /sf:{ string } Неприменимо Указывает имя исходного файла, который должен использоваться в качестве источника действия вместо базы данных.Если используется этот параметр, все остальные параметры источника будут недействительны.
/SourcePassword:{string} /sp:{string} Неприменимо Для сценариев разработки для SQL Server определяет пароль для доступа к базе данных-источнику.
/SourceServerName: {string} /ssn:{ string } Неприменимо Указывает имя сервера, на котором размещена база данных.
/SourceTimeout:{string} /st:{string} 15 Указывает время ожидания (в секундах) при установлении соединения с базой данных-источником.
/SourceTrustServerCertificate:{True | False} /stsc:{True | False} False Указывает, следует ли использовать протокол SSL для шифрования соединения с базой данных-источником и проходить по цепочке сертификатов для проверки доверия.
/SourceUser:{string} /su:{string} Неприменимо Для сценариев разработки для SQL Server указывает пользователя SQL Server, от имени которого производится доступ к базе данных.

Целевые параметры

В следующей таблице показаны параметры командной строки, которые SqlPackage.exe поддерживает при определении целей.

Параметр Краткая форма Обязательное поле? Описание
/TargetConnectionString{string} /tcs:{string} Неприменимо Указывает допустимую строку подключения SQL Server или SQL Azure для целевой базы данных.Если этот параметр указан в командной строке, используется строка подключения исключительно других целевых параметров.
/TargetDatabaseName:{string} /tdn:{string} Неприменимо Задает имя целевой базы данных.
/TargetEncryptConnection: {True | False} /tec:{True | False} False Указывает, используется ли шифрование SQL для целевой базы данных.
/TargetFile:{string} /tf:{string} Неприменимо Указывает путь к файлу на диске, куда будет записан DACPAC-файл.
/TargetPassword:{ string } /tp:{ string } Неприменимо Для сценариев разработки для SQL Server указывает пароль, используемый для доступа к целевой базе данных.
/TargetServerName:{ string } /ssn:{ string } Неприменимо Указывает имя сервера, на котором размещена целевая база данных.
/TargetTimeout:{ string } /tt:{ string } 15 Указывает время ожидания (в секундах) для соединения с целевой базой данных.
/TargetTrustServerCertificate:{True | False} /ttsc:{True | False} False Указывает, следует ли использовать протокол SSL для шифрования соединения с целевой базой данных и проходить по цепочке сертификатов для проверки доверия.
/TargetUser:{ string } /tu:{ string } Неприменимо Для сценариев разработки для SQL Server указывает пользователя SQL Server, от имени которого производится доступ к целевой базе данных.

Параметры и свойства действия Extract

Действие Extract SqlPackage.exe создает моментальный снимок базы данных (в виде DACPAC-файла) из активной базы данных в локальном экземпляре SQL Server или в экземпляре базы данных SQL Azure.Действие Extract может создать DACPAC-файл, содержащий только схему исходной базы данных или схему и пользовательские табличные данные.

Параметры

Источник. Для Extract действительны все Исходные параметры., кроме /SourceFile:.

Цель. Только следующий параметр цели доступен в том случае, если задано действие извлечения с помощью программы SqlPackage.exe.

Параметр Краткая форма Обязательное поле? Описание
/TargetFile:{string} /tf:{string} Y Указывает путь к файлу на диске, куда будет записан DACPAC-файл.

Свойства

Свойство По умолчанию Описание
/p:CommandTimeout = {Integer} 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:DacApplicationDescription={ string } Неприменимо Определяет описание приложения для сохранения в метаданных DACPAC.
/p:DacApplicationName={ string } Неприменимо Определяет имя приложения для сохранения в метаданных DACPAC.Значением по умолчанию является имя базы данных.
/p:DacMajorVersion={integer} 1 Определяет основную версию для сохранения в метаданных DACPAC.
/p:DacMinorVersion={integer} 0 Если задано значение true, то из указанного источника извлекаются только объекты в области приложения.Если задано значение false, то из указанного источника извлекаются все объекты.
/p:ExtractAllTableData={true | false} False Если задано значение true, создается DACPAC-файл, который включает схему базы данных и данные из всех пользовательских таблиц.
/p:ExtractApplicationScopedObjectsOnly={True | False} True Если задано значение true, то из указанного источника извлекаются только объекты в области приложения.Если задано значение false, то из указанного источника извлекаются все объекты.
/p:ExtractReferencedServerScopedElements={True| False} True Если задано значение true, извлекается имя входа, аудит сервера и объекты учетных данных, на которые ссылаются объекты базы данных-источника.
/p:IgnoreExtendedProperties={True | False} False Указывает, следует ли пропускать расширенные свойства.
/p:IgnorePermissions={True | False} True Указывает, следует ли не учитывать разрешения.
/p:IgnoreUserLoginMappings={True | False} False Указывает, будут ли не учитываться связи между пользователями и именами входа.
/p:Storage={File|Memory} File Указывает тип резервного хранилища для модели схемы, используемой во время извлечения.
/p:TableData={string} Неприменимо Это свойство используется для указания на отдельные пользовательские таблицы, которые должны включаться в действие Extract.Указание на таблицы осуществляется с помощью имени таблицы, состоящего из двух частей.
/p:VerifyExtraction={True | False} False Указывает, следует ли проверять извлеченный DACPAC-файл.

Примечание. Если при выполнении действия Extract задать параметр /p:ExtractAllTableData = true, то нельзя будет также указать отдельные таблицы с помощью свойства /p:TableData.Чтобы указать одну таблицу или несколько таблиц, из которой (-ых) должны извлекаться данные, задайте /p:ExtractAllTableData = false.

Параметры публикации, свойства и переменные SQLCMD

Операция публикации SqlPackage.exe заключается в добавочном обновлении схемы целевой базы данных в соответствии со структурой базы данных-источника.Публикация пакета развертывания, содержащего пользовательские данные для всех или для части таблиц, помимо схемы будет обновлять эти табличные данные.Обратите внимание, что развертывание данных перезапишет схему и данные в существующих таблицах целевой базы данных.Развертывание данных не будет изменять существующие схему или данные в целевой базе данных для таблиц, не включенных в пакет развертывания.

Параметры

Источник. Для публикации действителен только параметр /SourceFile:.

Цель. Для действия Publish действительны все Целевые параметры, за исключением TargetFile.

Следующие параметры цели также доступны в том случае, если с помощью программы SqlPackage.exe задано действие публикации.

Параметр Краткая форма Обязательное поле? Описание
/Profile:{string} /pr:{string} Неприменимо Указывает путь к файлу приложения уровня данных профиля публикации.Профиль определяет коллекцию свойств и переменных, которые должны использоваться при формировании выходных данных.
/Properties:{PropertyName}={Value} /p:{PropertyName}={Value} Неприменимо Указывает пару «имя-значение» для свойства действия; {PropertyName}={Value}.Имена свойств действия см. в справке по данным действиям.

Примечание. Вы можете публиковать пакет развертывания с табличными данными без указания какого-либо дополнительного синтаксиса или ограничений.

Свойства

Свойство По умолчанию Описание
/p:AdditionalDeploymentContributorArguments={string} Неприменимо Задает дополнительные аргументы участника развертывания для участников развертывания.Это должен быть список значений, разделенных точками с запятой.
/p:AdditionalDeploymentContributors={string} Неприменимо Указывает дополнительных участников развертывания, которые должны выполняться при развертывании пакета DACPAC.Это должен быть список идентификаторов или полных имен участников сборки, разделенных точками с запятой.
/p:AllowDropBlockingAssemblies ={True | False} False Указывает, будет ли публикация SqlClr удалять блокирующие сборки в процессе выполнения плана развертывания.По умолчанию все блокирующие и ссылочные сборки препятствуют обновлению сборки, если необходимо удалить ссылочную сборку.
/p:AllowIncompatiblePlatform={True | False} False Указывает, должно ли продолжаться выполнение действия публикации, несмотря на потенциальную несовместимость платформ SQL Server.
/p:BackupDatabaseBeforeChanges={True | False} False Создает резервную копию базы данных перед развертыванием любых изменений.
/p:BlockOnPossibleDataLoss={True | False} True Указывает, прекращается ли эпизод публикации, если операция публикации может вызвать потерю данных.
/p:BlockWhenDriftDetected={True | False} True Указывает, следует ли блокировать обновление базы данных, схема которой больше не соответствует регистрации или регистрация которой удалена.
/p:CommandTimeout = { integer } 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:CommentOutSetVarDeclarations={True | False} False Указывает, будут ли объявления переменных SETVAR закомментированы в созданном скрипте публикации.Эту возможность можно выбрать, если планируется задавать значения в командной строке программы SQLCMD.EXE во время публикации.
/p:CompareUsingTargetCollation={True | False} False Этот параметр указывает, как обрабатываются параметры сортировки базы данных во время развертывания. По умолчанию параметры сортировки целевой базы данных обновляются, если они не совпадают с параметрами сортировки, указанными источником.Если задан этот параметр, использоваться будут параметры сортировки целевой базы данных (или сервера).
/p:CreateNewDatabase={True | False} False Указывает, обновляется ли целевая база данных, или ее нужно удалить и создать заново при публикации базы данных.
/p:DeployDatabaseInSingleUserMode={True | False} False Если указано значение true, то перед развертыванием база данных будет переведена в однопользовательский режим.
/p:DisableAndReenableDdlTriggers={True | False} True Указывает, следует ли отключить триггеры языка описания данных DDL в начале процесса публикации и включить их в конце.
/p:DoNotAlterChangeDataCaptureObjects={True | False} True Если указано значение true, объекты отслеживания измененных данных не меняются.
/p:DoNotAlterReplicatedObjects={True | False} True Указывает, определяются ли во время проверки реплицируемые объекты.
/p:DoNotDropObjectType={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо. Тип объекта, который не должен удаляться, когда DropObjectsNotInSource имеет значение true.
/p:DoNotDropObjectTypes= { строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые не должны удаляться, когда DropObjectsNotInSource имеет значение true.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:DropConstraintsNotInSource={True | False} True Указывает, будут ли при выполнении публикации в целевой базе данных удалены ограничения, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:DropDmlTriggersNotInSource={True | False} True Указывает, будут ли при выполнении публикации в целевой базе данных удалены триггеры языка обработки данных DML, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:DropExtendedPropertiesNotInSource={True | False} True Указывает, будут ли при выполнении публикации в целевой базе данных удалены расширенные свойства, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:DropIndexesNotInSource={True | False} True Указывает, будут ли при выполнении публикации в целевой базе данных удалены индексы, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:DropObjectsNotInSource={True | False} False Указывает, будут ли объекты, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropPermissionsNotInSource={True | False} False Указывает, будут ли при выполнении публикации в целевой базе данных удалены разрешения, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:DropRoleMembersNotInSource={True | False} False Указывает, будут ли при выполнении публикации в целевой базе данных удалены члены ролей, которые отсутствуют в моментальном снимке базы данных (DACPAC).
/p:ExcludeObjectType={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо Тип объекта, который должен игнорироваться во время развертывания.
/p:ExcludeObjectTypes={ строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые должны игнорироваться во время развертывания.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:GenerateSmartDefaults={True | False} False Указывает, будет ли SqlPackage.exe определять значение по умолчанию автоматически при обновлении таблицы, содержащей данные со столбцом, который не допускает значения NULL.
/p:IgnoreAnsiNulls={True | False} False Указывает, следует ли пропускать или обновлять различия в параметре ANSI NULLS во время публикации в базе данных.
/p: IgnoreAuthorizer={True | False} False Указывает, следует пропускать или обновлять различия в параметре Authorizer во время публикации в базе данных.
/p:IgnoreColumnCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки столбца во время публикации в базе данных.
/p:IgnoreComments={True | False} False Указывает, следует пропускать или обновлять различия в порядке комментариев во время публикации в базе данных.
/p:IgnoreCryptographicProviderFilePath={True | False} True Указывает, следует пропускать или обновлять различия в пути файла для поставщика служб шифрования во время публикации в базе данных.
/p:IgnoreDdlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров языка описания данных DDL во время публикации в базе данных.
/p:IgnoreDdlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DDL во время публикации в базе данных.
/p:IgnoreDefaultSchema={True | False} False Указывает, следует пропускать или обновлять различия в схеме по умолчанию во время публикации в базе данных.
/p:IgnoreDmlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров DML во время публикации в базе данных.
/p:IgnoreDmlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DML во время публикации в базе данных.
/p:IgnoreExtendedProperties={True | False} False Указывает, следует пропускать или обновлять различия в расширенных свойствах во время публикации в базе данных.
/p:IgnoreFileAndLogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях файлов и журналов во время публикации в базе данных.
/p:IgnoreFilegroupPlacement={True | False} True Указывает, следует ли пропускать или обновлять различия в размещении FILEGROUP во время публикации в базе данных.
/p:IgnoreFileSize={True | False} True Указывает, следует пропускать или обновлять различия в размере файлов во время публикации в базе данных.
/p:IgnoreFillFactor={True | False} True Указывает, следует пропускать или обновлять различия в коэффициентах заполнения во время публикации в базе данных.
/p:IgnoreFullTextCatalogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях к файлам полнотекстовых индексов и журналов во время публикации в базе данных.
/p:IgnoreIdentitySeed={True | False} False Указывает, следует пропускать или обновлять различия в начальных значениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIncrement={True | False} False Указывает, следует пропускать или обновлять различия в приращениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIndexOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах индекса во время публикации в базе данных.
/p:IgnoreIndexPadding={True | False} True Указывает, следует пропускать или обновлять различия в разреженности индекса во время публикации в базе данных.
/p:IgnoreKeywordCasing={True | False} True Указывает, следует пропускать или обновлять различия в регистре ключевых слов во время публикации в базе данных.
/p:IgnoreLockHintsOnIndexes={True | False} False Указывает, следует пропускать или обновлять различия в указаниях блокировки для индексов во время публикации в базе данных.
/p:IgnoreLoginSids={True | False} True Указывает, следует пропускать или обновлять различия в идентификаторах безопасности (SID) во время публикации в базе данных.
/p:IgnoreNotForReplication={True | False} False Указывает, следует пропускать или обновлять различия в параметре «не для репликации» во время публикации в базе данных.
/p:IgnoreObjectPlacementOnPartitionScheme={True | False} True Указывает, следует пропускать или обновлять различия в размещении объектов в схеме секционирования во время публикации в базе данных.
/p:IgnorePartitionSchemes={True | False} False Указывает, следует пропускать или обновлять различия в функциях и схемах секционирования во время публикации в базе данных.
/p:IgnorePermissions={True | False} False Указывает, следует пропускать или обновлять различия в разрешениях во время публикации в базе данных.
/p:IgnoreQuotedIdentifiers={True | False} False Указывает, следует пропускать или обновлять различия в настройках идентификаторов, заключенных в кавычки, во время публикации в базе данных.
/p:IgnoreRoleMembership={True | False} False Указывает, следует пропускать или обновлять различия в членстве в роли имен входа во время публикации в базе данных.
/p:IgnoreRouteLifetime={True | False} True Указывает, следует пропускать или обновлять различия в именах входа и членстве в роли во время публикации в базе данных.
/p:IgnoreSemicolonBetweenStatements={True | False} True Указывает, следует пропускать или обновлять различия в точках с запятой между инструкциями Transact-SQL во время публикации в базе данных.
/p:IgnoreTableOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах таблицы во время публикации в базе данных.
/p:IgnoreUserSettingsObjects={True | False} False Указывает, следует пропускать или обновлять различия в параметрах настройки пользователей во время публикации в базе данных.
/p:IgnoreWhitespace={True | False} True Указывает, следует пропускать или обновлять различия в пробелах во время публикации в базе данных.
/p:IgnoreWithNocheckOnCheckConstraints={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для проверочных ограничений во время публикации в базе данных.
/p:IgnoreWithNocheckOnForeignKeys={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для внешних ключей во время публикации в базе данных.
/p:IncludeCompositeObjects={True | False} False Указывает, следует ли включать все составные элементы в единую операцию публикации.
/p:IncludeTransactionalScripts={True | False} False Указывает, следует ли по возможности использовать транзакционные инструкции во время публикации в базе данных.
/p:NoAlterStatementsToChangeClrTypes={True | False} False Указывает, что при публикации (при наличии различий) вместо выполнения инструкции ALTER ASSEMBLY сборка всегда должна удаляться и создаваться повторно.
/p:PopulateFilesOnFilegroups={True | False} True Указывает, создается ли новый файл при создании новой группы FileGroup в целевой базе данных.
/p:RegisterDataTierApplication={True | False} False Указывает, регистрируется ли схема на сервере базы данных.
/p:RunDeploymentPlanExecutors={True | False} False Указывает, должны ли выполняться участники DeploymentPlanExecutor, когда выполняются другие операции.
/p:ScriptDatabaseCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки базы данных во время публикации в базе данных.
/p:ScriptDatabaseCompatibility={True | False} True Указывает, следует пропускать или обновлять различия в совместимости базы данных во время публикации в базе данных.
/p:ScriptDatabaseOptions={True | False} True Указывает, следует задавать или обновлять свойства целевой базы данных во время публикации в базе данных.
/p:ScriptDeployStateChecks= {True | False } False Указывает, создаются ли в скрипте публикации инструкции для проверки имен серверов и баз данных на соответствие именам, указанным в проекте базы данных.
/p:ScriptFileSize={True | False} False Определяет, указывается ли размер при добавлении файла в файловую группу.
/p:ScriptNewConstraintValidation={True | False} True Указывает, следует ли проверять все ограничения как один набор в конце публикации, чтобы избежать ошибок данных, вызванных проверкой ограничений внешнего ключа в процессе выполнения публикации.Если этот параметр имеет значение False, ограничения публикуются без проверки соответствующих данных.
/p:ScriptRefreshModule={True | False} True Указывает, нужно ли включать в конец скрипта публикации инструкции обновления.
/p:Storage={File | Memory} Memory Указывает, как сохраняются элементы при построении модели базы данных.Для обеспечения высокой производительности по умолчанию используется значение InMemory.Для очень больших баз данных требуется хранилище с использованием файлов.
/p:TreatVerificationErrorsAsWarnings={True | False} False Указывает, следует ли рассматривать ошибки, возникающие во время публикации, как предупреждения.Проверка выполняется применительно к сформированному плану развертывания перед его выполнением применительно к целевой базе данных.Проверка плана выявляет такие проблемы, как потеря объектов, существующих только в целевой базе данных (например, индексов), которые должны быть удалены в процессе внесения изменений.Кроме того, она выявляет ситуации, когда зависимые объекты (таблицы, представления и т. д.) существуют в результате наличия ссылок на составной проект, но отсутствуют в целевой базе данных.Можно выбрать, чтобы ошибки проверки трактовались как предупреждения, чтобы получить полный список выявленных проблем, а не останавливать выполнение публикации при возникновении каждой ошибки.
/p:UnmodifiableObjectWarnings={True | False} True Указывает, следует ли формировать предупреждения, если обнаружены различия в объектах, которые не могут быть изменены (например, если отличаются размеры или пути файлов).
/p:VerifyCollationCompatibility={True | False} True Указывает, проверяется ли совместимость параметров сортировки.
/p:VerifyDeployment={True | False} True Указывает, следует ли выполнять проверки перед началом публикации, которая останавливается при возникновении проблем, которые могут заблокировать успешную публикацию.Например, публикация может остановиться в случае, если во время публикации возникли ошибки, связанные с тем, что внешние ключи в целевой базе данных отсутствуют в проекте базы данных.

Переменные SQLCMD

В следующей таблице описан формат параметра, который позволит переопределить значение команды SQL (sqlcmd) значением переменной, заданной при выполнении публикации.Значения переменных, заданные в командной строке, переопределяют другие значения, присвоенные переменной (например, в профиле публикации).

Параметр По умолчанию Описание
/Variables:{PropertyName}={Value} Указывает пару «имя-значение» для переменной действия; {VariableName}={Value}.DACPAC-файл содержит список действительных переменных SQLCMD.Если значения не будут указаны для всех переменных, возникнет ошибка.

Параметры и свойства действия Export

Действие Export SqlPackage.exe экспортирует активную базу данных из SQL Server или базы данных SQL Azure в пакет BACPAC (BACPAC-файл).По умолчанию данные для всех таблиц будут включены в BACPAC-файл.При необходимости можно указать только подмножество таблиц, для которых следует выполнить экспорт данных.Проверка для действия Export обеспечивает совместимость базы данных SQL Azure со всей целевой базой данных, даже если для экспорта указано подмножество таблиц.

Параметры

Источник. Для действия Export поддерживаются все Исходные параметры., за исключением /SourceFile:.

Цель. Единственный допустимый целевой параметр для экспорта — /TargetFile: {строка}, где {строка} — путь к файлу на диске, где будет записан BACPAC-файл.

Ограничения.

  • Экспорт таблицы данных поддерживается только для пользовательских таблиц.

  • Таблицы, указанные для экспорта, должны быть в закрытом наборе.Пользовательские таблицы не могут иметь входящие или исходящие внешние ключи, выходящие за пределы указанного набора таблиц.

Следующие параметры доступны в том случае, если действие Export указано с помощью SqlPackage.exe.

Параметр Краткая форма Обязательное поле? Описание
/TargetFile:{строка} /tf:{строка} Y Указывает путь к файлу, где будет создан экспортированный BACPAC-файл.Путь к файлу должен быть существующим каталогом, и строка должна включать имя файла с расширением BACPAC.Имя пути не может превышать существующее в Windows ограничение для пути к файлу в 256 символов.

Свойства

В следующей таблице перечислены свойства командной строки, которые предоставляет SqlPackage.exe для экспорта BACPAC-файла.

Свойство По умолчанию Описание
/p:CommandTimeout = { integer } 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:TableData={string} Неприменимо Это свойство используется для указания отдельных пользовательских таблиц, которые должны включаться в действие Export.Указание на таблицы осуществляется с помощью имени таблицы, состоящего из двух частей.
/p:Storage={File|Memory} Memory Указывает, как сохраняются элементы при построении модели базы данных.Для обеспечения высокой производительности по умолчанию используется значение Memory.Для очень больших баз данных требуется хранилище с использованием файлов.

Параметры и свойства действия Import

Действие Import SqlPackage.exe импортирует схему и табличные данные из пакета BACPAC (BACPAC-файла) в новую или пустую базу данных в экземпляре SQL Server или в базе данных SQL Azure.Во время операции импорта в существующую базу данных в целевой базе данных не могут находиться никакие заданные пользователем объекты схемы.

Параметры

Источник. Для действия Import допустим только параметр /SourceFile:{строка}, где {строка} — путь к исходному BACPAC-файлу на диске.

Цель: Для действия Import допустимы все Целевые параметры, за исключением /TargetFile.

Следующие целевые параметры доступны в том случае, если действие Import указывается с помощью SqlPackage.exe.

Параметр Краткая форма Обязательное поле? Описание
/SourceFile:{строка} /sf:{строка} Y Указывает путь к исходному файлу.Строка должна включать имя целевого файла с расширением BACPAC.Имя пути не может превышать существующее в Windows ограничение для пути к файлу в 256 символов.

Свойства

В следующей таблице перечислены свойства командной строки, которые предоставляет SqlPackage.exe для экспорта пакета BACPAC.

Свойство По умолчанию Описание
/p:CommandTimeout = {Integer} 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:ImportContributorArguments = { String } Неприменимо Задает аргументы участника развертывания для участников развертывания.Это должен быть список значений, разделенных точками с запятой.
/p:ImportContributors = { String } Неприменимо Указывает участников развертывания, которые должны выполняться при импорте пакета BACPAC.Это должен быть список идентификаторов или полных имен участников сборки, разделенных точками с запятой.
/p:Storage={File | Memory} Memory Указывает, как сохраняются элементы при построении модели базы данных.Для обеспечения высокой производительности по умолчанию используется значение Memory.Для очень больших баз данных требуется хранилище с использованием файлов.

Параметры и свойства DeployReport

Действие с отчетом программы SqlPackage.exe создает отчет в формате XML по изменениям, которые должны быть внесены в результате публикации.

Параметры

Источник. Для DeployReport действителен только параметр /SourceFile.

Цель. Для действия DeployReport допустимы все Целевые параметры.

Следующие прочие параметры цели также доступны в том случае, если с помощью программы SqlPackage.exe задано действие DeployReport.

Параметр Краткая форма Обязательное поле? Описание
/OutputPath:{строка} /op:{строка} Y Указывает путь, по которому формируются выходные XML-файлы.

Свойства

В следующей таблице перечислены свойства командной строки, которые поддерживает SqlPackage.exe для изменения эффекта действия DeployReport.

Свойство По умолчанию Описание
/p:AdditionalDeploymentContributorArguments={String} Неприменимо Задает дополнительные аргументы участника развертывания для участников развертывания.Это должен быть список значений, разделенных точками с запятой.
/p:AdditionalDeploymentContributors={String} Неприменимо Указывает дополнительных участников развертывания, которые должны выполняться при развертывании пакета DACPAC.Это должен быть список идентификаторов или полных имен участников сборки, разделенных точками с запятой.
/p:AllowDropBlockingAssemblies={True | False} False Это свойство используется развертыванием SQLCLR для удаления блокирующих сборок как часть плана развертывания.По умолчанию все блокирующие сборки/ссылки на сборки блокируют обновление сборки, если ссылка на сборку должна быть удалена.
/p:AllowIncompatiblePlatform={True | False} False Указывает, должно ли продолжаться выполнение действия с отчетом, несмотря на потенциальную несовместимость платформ SQL Server.
/p:BackupDatabaseBeforeChanges={True | False} False Создает резервную копию базы данных перед развертыванием любых изменений.
/p:BlockOnPossibleDataLoss={True | False} True Указывает, что эпизод публикации следует прекратить, если существует вероятность потери данных из-за выполнения операции публикации.
/p:BlockWhenDriftDetected={True | False} True Указывает, следует ли блокировать обновление базы данных, схема которой больше не соответствует регистрации или регистрация которой удалена.
/p:CommandTimeout = {Integer} 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:CommentOutSetVarDeclarations={True | False} False Указывает, будет ли объявление переменных SETVAR закомментировано в созданном скрипте публикации.Эту возможность можно выбрать, если планируется задавать значения в командной строке во время публикации с помощью такого средства, как SQLCMD.EXE.
/p:CompareUsingTargetCollation={True | False} False Этот параметр указывает, как обрабатываются параметры сортировки базы данных во время развертывания. По умолчанию параметры сортировки целевой базы данных обновляются, если они не совпадают с параметрами сортировки, указанными источником.Если задан этот параметр, использоваться будут параметры сортировки целевой базы данных (или сервера).
/p:CreateNewDatabase={True | False} False Указывает, обновляется ли целевая база данных, или ее нужно удалить и создать заново при публикации базы данных.
/p:DeployDatabaseInSingleUserMode={True | False} False Если указано значение true, то перед развертыванием база данных будет переведена в однопользовательский режим.
/p:DisableAndReenableDdlTriggers={True | False} True Указывает, следует ли отключить триггеры языка описания данных DDL в начале процесса публикации и включить их в конце.
/p:DoNotAlterChangeDataCaptureObjects={True | False} False Если указано значение true, объекты отслеживания измененных данных не меняются.
/p:DoNotAlterReplicatedObjects={True | False} True Указывает, определяются ли во время проверки реплицируемые объекты.
/p:DoNotDropObjectType ={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо Тип объекта, который не должен удаляться, когда DropObjectsNotInSource имеет значение true.
/p:DoNotDropObjectTypes= { строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые не должны удаляться, когда DropObjectsNotInSource имеет значение true.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:DropConstraintsNotInSource={True | False} True Указывает, будут ли ограничения, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropDmlTriggersNotInSource={True | False} True Указывает, будут ли триггеры DML, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropExtendedPropertiesNotInSource={True | False} True Указывает, будут ли при выполнении публикации в базе данных удалены расширенные свойства, которые не существуют в моментальном снимке базы данных (DACPAC).
/p:DropIndexesNotInSource={True | False} True Указывает, будут ли индексы, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropObjectsNotInSource={True | False} False Указывает, будут ли объекты, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropPermissionsNotInSource={True | False} False Указывает, будут ли разрешения, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации обновлений.
/p:DropRoleMembersNotInSource={True | False} False Указывает, будут ли члены ролей, которые не определены в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации обновлений.
/p:ExcludeObjectType={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо Тип объекта, который должен игнорироваться во время развертывания.
/p:ExcludeObjectTypes={ строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые должны игнорироваться во время развертывания.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:GenerateSmartDefaults={True | False} False Автоматически определяет значение по умолчанию при обновлении таблицы, содержащей данные со столбцом, который не допускает значения NULL.
/p:IgnoreAnsiNulls={True | False} False Указывает, следует ли пропускать или обновлять различия в параметре ANSI NULLS во время публикации в базе данных.
/p: IgnoreAuthorizer={True | False} False Указывает, следует пропускать или обновлять различия в параметре Authorizer во время публикации в базе данных.
/p:IgnoreColumnCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки столбца во время публикации в базе данных.
/p:IgnoreComments={True | False} False Указывает, следует пропускать или обновлять различия в порядке комментариев во время публикации в базе данных.
/p:IgnoreCryptographicProviderFile={True | False} True Указывает, следует пропускать или обновлять различия в пути файла для поставщика служб шифрования во время публикации в базе данных.
/p:IgnoreDdlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров языка описания данных DDL во время публикации в базе данных.
/p:IgnoreDdlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DDL во время публикации в базе данных.
/p:IgnoreDefaultSchema={True | False} False Указывает, следует пропускать или обновлять различия в схеме по умолчанию во время публикации в базе данных.
/p:IgnoreDmlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров DML во время публикации в базе данных.
/p:IgnoreDmlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DML во время публикации в базе данных.
/p:IgnoreExtendedProperties={True | False} False Указывает, следует пропускать или обновлять различия в расширенных свойствах во время публикации в базе данных.
/p:IgnoreFileAndLogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях файлов и журналов во время публикации в базе данных.
/p:IgnoreFilegroupPlacement={True | False} True Указывает, следует ли пропускать или обновлять различия в размещении FILEGROUP во время публикации в базе данных.
/p:IgnoreFileSize={True | False} True Указывает, следует пропускать или обновлять различия в размере файлов во время публикации в базе данных.
/p:IgnoreFillFactor={True | False} True Указывает, следует пропускать или обновлять различия в коэффициентах заполнения во время публикации в базе данных.
/p:IgnoreFullTextCatalogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях к файлам полнотекстовых индексов и журналов во время публикации в базе данных.
/p:IgnoreIdentitySeed={True | False} False Указывает, следует пропускать или обновлять различия в начальных значениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIncrement={True | False} False Указывает, следует пропускать или обновлять различия в приращениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIndexOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах индекса во время публикации в базе данных.
/p:IgnoreIndexPadding={True | False} True Указывает, следует пропускать или обновлять различия в разреженности индекса во время публикации в базе данных.
/p:IgnoreKeywordCasing={True | False} True Указывает, следует пропускать или обновлять различия в регистре ключевых слов во время публикации в базе данных.
/p:IgnoreLoginSids={True | False} True Указывает, следует пропускать или обновлять различия в идентификаторах безопасности (SID) во время публикации в базе данных.
/p:IgnoreNotForReplication={True | False} False Указывает, следует пропускать или обновлять различия в параметре «не для репликации» во время публикации в базе данных.
/p:IgnoreObjectPlacementOnPartitionScheme={True | False} True Указывает, следует пропускать или обновлять различия в размещении объектов в схеме секционирования во время публикации в базе данных.
/p:IgnorePartitionSchemes={True | False} False Указывает, следует пропускать или обновлять различия в функциях и схемах секционирования во время публикации в базе данных.
/p:IgnorePermissions={True | False} False Указывает, следует пропускать или обновлять различия в разрешениях во время публикации в базе данных.
/p:IgnoreQuotedIdentifiers={True | False} False Указывает, следует пропускать или обновлять различия в настройках идентификаторов, заключенных в кавычки, во время публикации в базе данных.
/p:IgnoreRoleMembership={True | False} False Указывает, следует пропускать или обновлять различия в членстве в роли имен входа во время публикации в базе данных.
/p:IgnoreRouteLifetime={True | False} True Указывает, следует пропускать или обновлять различия в именах входа и членстве в роли во время публикации в базе данных.
/p:IgnoreSemicolonBetweenStatements={True | False} True Указывает, следует пропускать или обновлять различия в точках с запятой между инструкциями Transact-SQL во время публикации в базе данных.
/p:IgnoreTableOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах таблицы во время публикации в базе данных.
/p:IgnoreUserSettingsObjects={True | False} False Указывает, следует пропускать или обновлять различия в параметрах настройки пользователей во время публикации в базе данных.
/p:IgnoreWhitespace={True | False} True Указывает, следует пропускать или обновлять различия в пробелах во время публикации в базе данных.
/p:IgnoreWithNocheckOnCheckConstraints={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для проверочных ограничений во время публикации в базе данных.
/p:IgnoreWithNocheckOnForeignKeys={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для внешних ключей во время публикации в базе данных.
/p:IncludeCompositeObjects={True | False} False Указывает, следует ли включать все составные элементы в единую операцию публикации.
/p:IncludeTransactionalScripts={True | False} False Указывает, следует ли по возможности использовать транзакционные инструкции во время публикации в базе данных.
/p:NoAlterStatementsToChangeClrTypes={True | False} False Указывает, что при публикации (при наличии различий) вместо выполнения инструкции ALTER ASSEMBLY сборка всегда должна удаляться и создаваться повторно.
/p:PopulateFilesOnFilegroups={True | False} True Указывает, создается ли новый файл при создании новой группы FileGroup в целевой базе данных.
/p:RegisterDataTierApplication={True | False} False Указывает, регистрируется ли схема на сервере базы данных.
/p:RunDeploymentPlanExecutors={True | False} False Указывает, должны ли выполняться участники DeploymentPlanExecutor, когда выполняются другие операции.
/p:ScriptDatabaseCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки базы данных во время публикации в базе данных.
/p:ScriptDatabaseCompatibility={True | False} True Указывает, следует пропускать или обновлять различия в совместимости базы данных во время публикации в базе данных.
/p:ScriptDatabaseOptions={True | False} True Указывает, следует задавать или обновлять свойства целевой базы данных во время публикации в базе данных.
/p:ScriptFileSize={True | False} False Определяет, указывается ли размер при добавлении файла в файловую группу.
/p:ScriptNewConstraintValidation={True | False} True Указывает, следует ли проверять все ограничения как один набор в конце публикации, чтобы избежать ошибок данных, вызванных проверкой ограничений внешнего ключа в процессе выполнения публикации.Если этот параметр имеет значение False, ограничения публикуются без проверки соответствующих данных.
/p:ScriptDeployStateChecks={True | False} False Указывает, следует ли создавать в скрипте публикации инструкции для проверки имен серверов и баз данных на соответствие именам, указанным в проекте базы данных.
/p:ScriptRefreshModule={True | False} True Указывает, нужно ли включать в конец скрипта публикации инструкции обновления.
/p:Storage={File | Memory} Memory Указывает, как сохраняются элементы при построении модели базы данных.Для обеспечения высокой производительности по умолчанию используется значение InMemory.Для очень больших баз данных требуется хранилище с использованием файлов.
/p:TreatVerificationErrorsAsWarnings={True | False} False Указывает, следует ли рассматривать ошибки, возникающие во время публикации, как предупреждения.Проверка выполняется применительно к сформированному плану развертывания перед его выполнением применительно к целевой базе данных.Проверка плана выявляет такие проблемы, как потеря объектов, существующих только в целевой базе данных (например, индексов), которые должны быть удалены в процессе внесения изменений.Кроме того, она выявляет ситуации, когда зависимые объекты (таблицы, представления и т. д.) существуют в результате наличия ссылок на составной проект, но отсутствуют в целевой базе данных.Можно выбрать, чтобы ошибки проверки трактовались как предупреждения, чтобы получить полный список выявленных проблем, а не останавливать выполнение публикации при возникновении каждой ошибки.
/p:UnmodifiableObjectWarnings={True | False} True Указывает, следует ли формировать предупреждения, если обнаружены различия в объектах, которые не могут быть изменены (например, если отличаются размеры или пути файлов).
/p:VerifyCollationCompatibility={True | False} True Указывает, проверяется ли совместимость параметров сортировки.
/p:VerifyDeployment={True | False} True Указывает, следует ли выполнять проверки перед началом публикации, которая останавливается при возникновении проблем, которые могут заблокировать успешную публикацию.Например, публикация может остановиться в случае, если во время публикации возникли ошибки, связанные с тем, что внешние ключи в целевой базе данных отсутствуют в проекте базы данных.

Параметры DriftReport

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

Параметры

Источник. Неприменимо

Цель. Для DriftReport допустимы все Целевые параметры, за исключением TargetFile.

Следующий параметр цели доступен в том случае, если в командной строке SqlPackage.exe задано действие DriftReport.

Параметр Краткая форма Обязательное поле? Описание
/OutputPath:{string} /op:{string} Y Указывает путь, по которому формируются выходные файлы.

Параметры и свойства скрипта

В результате действия скрипта SqlPackage.exe создается добавочный скрипт на языке Transact-SQL для обновления схемы целевой базы данных до соответствия схеме базы данных-источника.

Параметры

Источник. Для скрипта действителен только параметр /SourceFile:.

Цель. Для Script допустимы все Целевые параметры.

Следующий параметр цели доступен в том случае, если в командной строке SqlPackage.exe задано действие создания скрипта.

Параметр Краткая форма Обязательное поле? Описание
/OutputPath:{string} /op:{string} Y Указывает путь, по которому формируются выходные файлы.

Свойства

В следующей таблице перечислены свойства командной строки, которые поддерживает SqlPackage.exe для изменения эффекта действия Script.

Свойство По умолчанию Описание
/p:AdditionalDeploymentContributorArguments={String} Неприменимо Задает дополнительные аргументы участника развертывания для участников развертывания.Это должен быть список значений, разделенных точками с запятой.
/p:AdditionalDeploymentContributors={String} Неприменимо Указывает дополнительных участников развертывания, которые должны выполняться при развертывании пакета DACPAC.Это должен быть список идентификаторов или полных имен участников сборки, разделенных точками с запятой.
/p:AllowDropBlockingAssemblies={True | False} False Это свойство используется развертыванием SQLCLR для удаления блокирующих сборок как часть плана развертывания.По умолчанию все блокирующие сборки/ссылки на сборки блокируют обновление сборки, если ссылка на сборку должна быть удалена.
/p:AllowIncompatiblePlatform={True | False} False Указывает, должно ли продолжаться выполнение действия с отчетом, несмотря на потенциальную несовместимость платформ SQL Server.
/p:BackupDatabaseBeforeChanges={True | False} False Создает резервную копию базы данных перед развертыванием любых изменений.
/p:BlockOnPossibleDataLoss={True | False} True Указывает, что эпизод публикации следует прекратить в случае вероятности потери данных из-за выполнения операции публикации.
/p:BlockWhenDriftDetected={True | False} True Указывает, следует ли блокировать обновление базы данных, схема которой больше не соответствует регистрации или регистрация которой удалена.
/p:CommandTimeout = {Integer} 60 Задает время ожидания команды в секундах при выполнении запросов к SQL Server.
/p:CommentOutSetVarDeclarations={True | False} False Указывает, будет ли объявление переменных SETVAR закомментировано в созданном скрипте публикации.Эту возможность можно выбрать, если планируется задавать значения в командной строке во время публикации с помощью такого средства, как SQLCMD.EXE.
/p:CompareUsingTargetCollation={True | False} False Этот параметр указывает, как обрабатываются параметры сортировки базы данных во время развертывания. По умолчанию параметры сортировки целевой базы данных обновляются, если они не совпадают с параметрами сортировки, указанными источником.Если задан этот параметр, использоваться будут параметры сортировки целевой базы данных (или сервера).
/p:CreateNewDatabase={True | False} False Указывает, обновляется ли целевая база данных, или ее нужно удалить и создать заново при публикации базы данных.
/p:DeployDatabaseInSingleUserMode={True | False} False Если указано значение true, то перед развертыванием база данных будет переведена в однопользовательский режим.
/p:DisableAndReenableDdlTriggers={True | False} True Указывает, следует ли отключить триггеры языка описания данных DDL в начале процесса публикации и включить их в конце.
/p:DoNotAlterChangeDataCaptureObjects={True | False} True Если указано значение true, объекты отслеживания измененных данных не меняются.
/p:DoNotAlterReplicatedObjects={True | False} True Указывает, определяются ли во время проверки реплицируемые объекты.
/p:DoNotDropObjectType={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо Тип объекта, который не должен удаляться, когда DropObjectsNotInSource имеет значение true.
/p:DoNotDropObjectTypes= { строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые не должны удаляться, когда DropObjectsNotInSource имеет значение true.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:DropConstraintsNotInSource={True | False} True Указывает, будут ли ограничения, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropDmlTriggersNotInSource={True | False} True Указывает, будут ли триггеры DML, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropExtendedPropertiesNotInSource={True | False} True Указывает, будут ли при выполнении публикации в базе данных удалены расширенные свойства, которые не существуют в моментальном снимке базы данных (DACPAC).
/p:DropIndexesNotInSource={True | False} True Указывает, будут ли индексы, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации.
/p:DropObjectsNotInSource={True | False} False Указывает, будут ли объекты, отсутствующие в моментальном снимке базы данных (DACPAC-файле), удалены из целевой базы данных при выполнении публикации.
/p:DropPermissionsNotInSource={True | False} False Указывает, будут ли разрешения, которые не существуют в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации обновлений.
/p:DropRoleMembersNotInSource={True | False} False Указывает, будут ли члены ролей, которые не определены в моментальном снимке базы данных (DACPAC), удалены из целевой базы данных при выполнении публикации обновлений.
/p:ExcludeObjectType={ Aggregates | ApplicationRoles | Assemblies | AsymmetricKeys | BrokerPriorities | Certificates | Contracts | DatabaseRoles | DatabaseTriggers | Defaults | ExtendedProperties | Filegroups | FileTables | FullTextCatalogs | FullTextStoplists | MessageTypes | PartitionFunctions | PartitionSchemes | Permissions | Queues | RemoteServiceBindings | RoleMembership | Rules | ScalarValuedFunctions | SearchPropertyLists | Sequences | Services | Signatures | StoredProcedures | SymmetricKeys | Synonyms | Tables | TableValuedFunctions | UserDefinedDataTypes | UserDefinedTableTypes | ClrUserDefinedTypes | Users | Views | XmlSchemaCollections | Audits | Credentials | CryptographicProviders | DatabaseAuditSpecifications | Endpoints | ErrorMessages | EventNotifications | EventSessions | LinkedServerLogins | Routes | ServerAuditSpecifications | ServerRoleMembership | ServerRoles | ServerTriggers } Неприменимо Тип объекта, который должен игнорироваться во время развертывания.
/p:ExcludeObjectTypes={ строка } Неприменимо Список типов объектов, разделенных точками с запятой, которые должны игнорироваться во время развертывания.Допустимые имена типов объектов: Aggregates, ApplicationRoles, Assemblies, AsymmetricKeys, BrokerPriorities, Certificates, Contracts, DatabaseRoles, DatabaseTriggers, Defaults, ExtendedProperties, Filegroups, FileTables, FullTextCatalogs, FullTextStoplists, MessageTypes, PartitionFunctions, PartitionSchemes, Permissions, Queues, RemoteServiceBindings, RoleMembership, Rules, ScalarValuedFunctions, SearchPropertyLists, Sequences, Services, Signatures, StoredProcedures, SymmetricKeys, Synonyms, Tables, TableValuedFunctions, UserDefinedDataTypes, UserDefinedTableTypes, ClrUserDefinedTypes, Users, Views, XmlSchemaCollections, Audits, Credentials, CryptographicProviders, DatabaseAuditSpecifications, Endpoints, ErrorMessages, EventNotifications, EventSessions, LinkedServerLogins, LinkedServers, Logins, Routes, ServerAuditSpecifications, ServerRoleMembership, ServerRoles, ServerTriggers.
/p:GenerateSmartDefaults={True | False} False Автоматически определяет значение по умолчанию при обновлении таблицы, содержащей данные со столбцом, который не допускает значения NULL.
/p:IgnoreAnsiNulls={True | False} False Указывает, следует ли пропускать или обновлять различия в параметре ANSI NULLS во время публикации в базе данных.
/p: IgnoreAuthorizer={True | False} False Указывает, следует пропускать или обновлять различия в параметре Authorizer во время публикации в базе данных.
/p:IgnoreColumnCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки столбца во время публикации в базе данных.
/p:IgnoreComments={True | False} False Указывает, следует пропускать или обновлять различия в порядке комментариев во время публикации в базе данных.
/p:IgnoreCryptographicProviderFile={True | False} True Указывает, следует пропускать или обновлять различия в пути файла для поставщика служб шифрования во время публикации в базе данных.
/p:IgnoreDdlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров языка описания данных DDL во время публикации в базе данных.
/p:IgnoreDdlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DDL во время публикации в базе данных.
/p:IgnoreDefaultSchema={True | False} False Указывает, следует пропускать или обновлять различия в схеме по умолчанию во время публикации в базе данных.
/p:IgnoreDmlTriggerOrder={True | False} False Указывает, следует пропускать или обновлять различия в порядке триггеров DML во время публикации в базе данных.
/p:IgnoreDmlTriggerState={True | False} False Указывает, следует ли пропускать или обновлять различия в состоянии (включен или отключен) триггеров DML во время публикации в базе данных.
/p:IgnoreExtendedProperties={True | False} False Указывает, следует пропускать или обновлять различия в расширенных свойствах во время публикации в базе данных.
/p:IgnoreFileAndLogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях файлов и журналов во время публикации в базе данных.
/p:IgnoreFilegroupPlacement={True | False} True Указывает, следует ли пропускать или обновлять различия в размещении FILEGROUP во время публикации в базе данных.
/p:IgnoreFileSize={True | False} True Указывает, следует пропускать или обновлять различия в размере файлов во время публикации в базе данных.
/p:IgnoreFillFactor={True | False} True Указывает, следует пропускать или обновлять различия в коэффициентах заполнения во время публикации в базе данных.
/p:IgnoreFullTextCatalogFilePath={True | False} True Указывает, следует пропускать или обновлять различия в путях к файлам полнотекстовых индексов и журналов во время публикации в базе данных.
/p:IgnoreIdentitySeed={True | False} False Указывает, следует пропускать или обновлять различия в начальных значениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIncrement={True | False} False Указывает, следует пропускать или обновлять различия в приращениях для столбца идентификаторов во время публикации в базе данных.
/p:IgnoreIndexOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах индекса во время публикации в базе данных.
/p:IgnoreIndexPadding={True | False} True Указывает, следует пропускать или обновлять различия в разреженности индекса во время публикации в базе данных.
/p:IgnoreKeywordCasing={True | False} True Указывает, следует пропускать или обновлять различия в регистре ключевых слов во время публикации в базе данных.
/p:IgnoreLoginSids={True | False} True Указывает, следует пропускать или обновлять различия в идентификаторах безопасности (SID) во время публикации в базе данных.
/p:IgnoreLockHintsOnIndexes={True | False} False Указывает, следует пропускать или обновлять различия в указаниях блокировки для индексов во время публикации в базе данных.
/p:IgnoreNotForReplication={True | False} False Указывает, следует пропускать или обновлять различия в параметре «не для репликации» во время публикации в базе данных.
/p:IgnoreObjectPlacementOnPartitionScheme={True | False} True Указывает, следует пропускать или обновлять различия в размещении объектов в схеме секционирования во время публикации в базе данных.
/p:IgnorePartitionSchemes={True | False} False Указывает, следует пропускать или обновлять различия в функциях и схемах секционирования во время публикации в базе данных.
/p:IgnorePermissions={True | False} False Указывает, следует пропускать или обновлять различия в разрешениях во время публикации в базе данных.
/p:IgnoreQuotedIdentifiers={True | False} False Указывает, следует пропускать или обновлять различия в настройках идентификаторов, заключенных в кавычки, во время публикации в базе данных.
/p:IgnoreRoleMembership={True | False} False Указывает, следует пропускать или обновлять различия в членстве в роли имен входа во время публикации в базе данных.
/p:IgnoreRouteLifetime={True | False} True Указывает, следует пропускать или обновлять различия в именах входа и членстве в роли во время публикации в базе данных.
/p:IgnoreSemicolonBetweenStatements={True | False} True Указывает, следует пропускать или обновлять различия в точках с запятой между инструкциями Transact-SQL во время публикации в базе данных.
/p:IgnoreTableOptions={True | False} False Указывает, следует пропускать или обновлять различия в параметрах таблицы во время публикации в базе данных.
/p:IgnoreUserSettingsObjects={True | False} False Указывает, следует пропускать или обновлять различия в параметрах настройки пользователей во время публикации в базе данных.
/p:IgnoreWhitespace={True | False} True Указывает, следует пропускать или обновлять различия в пробелах во время публикации в базе данных.
/p:IgnoreWithNocheckOnCheckConstraints={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для проверочных ограничений во время публикации в базе данных.
/p:IgnoreWithNocheckOnForeignKeys={True | False} False Указывает, следует ли пропускать или обновлять различия в значениях предложения WITH NOCHECK для внешних ключей во время публикации в базе данных.
/p:IncludeCompositeObjects={True | False} False Указывает, следует ли включать все составные элементы в единую операцию публикации.
/p:IncludeTransactionalScripts={True | False} False Указывает, следует ли по возможности использовать транзакционные инструкции во время публикации в базе данных.
/p:NoAlterStatementsToChangeClrTypes={True | False} False Указывает, что при публикации (при наличии различий) вместо выполнения инструкции ALTER ASSEMBLY сборка всегда должна удаляться и создаваться повторно.
/p:PopulateFilesOnFilegroups={True | False} True Указывает, создается ли новый файл при создании новой группы FileGroup в целевой базе данных.
/p:RegisterDataTierApplication={True | False} False Указывает, регистрируется ли схема на сервере базы данных.
/p:RunDeploymentPlanExecutors={True | False} False Указывает, должны ли выполняться участники DeploymentPlanExecutor, когда выполняются другие операции.
/p:ScriptDatabaseCollation={True | False} False Указывает, следует пропускать или обновлять различия в параметрах сортировки базы данных во время публикации в базе данных.
/p:ScriptDatabaseCompatibility={True | False} True Указывает, следует пропускать или обновлять различия в совместимости базы данных во время публикации в базе данных.
/p:ScriptDatabaseOptions={True | False} True Указывает, следует задавать или обновлять свойства целевой базы данных во время публикации в базе данных.
/p:ScriptFileSize={True | False} False Определяет, указывается ли размер при добавлении файла в файловую группу.
/p:ScriptNewConstraintValidation={True | False} True Указывает, следует ли проверять все ограничения как один набор в конце публикации, чтобы избежать ошибок данных, вызванных проверкой ограничений внешнего ключа в процессе выполнения публикации.Если этот параметр имеет значение False, ограничения публикуются без проверки соответствующих данных.
/p:ScriptDeployStateChecks={True | False} False Указывает, следует ли создавать в скрипте публикации инструкции для проверки имен серверов и баз данных на соответствие именам, указанным в проекте базы данных.
/p:ScriptRefreshModule={True | False} True Указывает, нужно ли включать в конец скрипта публикации инструкции обновления.
/p:Storage={File | Memory} Memory Указывает, как сохраняются элементы при построении модели базы данных.Для обеспечения высокой производительности по умолчанию используется значение InMemory.Для очень больших баз данных требуется хранилище с использованием файлов.
/p:TreatVerificationErrorsAsWarnings={True | False} False Указывает, следует ли рассматривать ошибки, возникающие во время публикации, как предупреждения.Проверка выполняется применительно к сформированному плану развертывания перед его выполнением применительно к целевой базе данных.Проверка плана выявляет такие проблемы, как потеря объектов, существующих только в целевой базе данных (например, индексов), которые должны быть удалены в процессе внесения изменений.Кроме того, она выявляет ситуации, когда зависимые объекты (таблицы, представления и т. д.) существуют в результате наличия ссылок на составной проект, но отсутствуют в целевой базе данных.Можно выбрать, чтобы ошибки проверки трактовались как предупреждения, чтобы получить полный список выявленных проблем, а не останавливать выполнение публикации при возникновении каждой ошибки.
/p:UnmodifiableObjectWarnings={True | False} True Указывает, следует ли формировать предупреждения, если обнаружены различия в объектах, которые не могут быть изменены (например, если отличаются размеры или пути файлов).
/p:VerifyCollationCompatibility={True | False} True Указывает, проверяется ли совместимость параметров сортировки.
/p:VerifyDeployment={True | False} True Указывает, следует ли выполнять проверки перед началом публикации, останавливаемой при возникновении проблем, которые могут заблокировать успешную публикацию.Например, публикация может остановиться в случае, если во время публикации возникли ошибки, связанные с тем, что внешние ключи в целевой базе данных не существуют в проекте базы данных.

См. также

Управление жизненным циклом базы данных