https://github.com/devlead/unpackdacpac
Unpack DAC Package .NET Tool - Extracts dacpac and generates deployment script to target folder without need for actual database running.
https://github.com/devlead/unpackdacpac
Last synced: 8 months ago
JSON representation
Unpack DAC Package .NET Tool - Extracts dacpac and generates deployment script to target folder without need for actual database running.
- Host: GitHub
- URL: https://github.com/devlead/unpackdacpac
- Owner: devlead
- License: mit
- Created: 2023-10-20T16:13:34.000Z (over 2 years ago)
- Default Branch: develop
- Last Pushed: 2025-08-05T06:48:30.000Z (9 months ago)
- Last Synced: 2025-08-05T08:33:18.037Z (9 months ago)
- Language: C#
- Size: 119 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Unpack DAC Package .NET Tool
Extracts dacpac and generates deployment script to target folder without need for actual database running.
## Install
```PowerShell
dotnet tool install --global UnpackDacPac
```
## Usage
`unpackdacpac unpack [OPTIONS]`
## Example
```PowerShell
unpackdacpac unpack Source.dacpac TargetPath --deploy-script-exclude-object-type Users --deploy-script-exclude-object-type Logins --deploy-script-exclude-object-type RoleMembership
```
Will in `TargetPath` result in a files
- DacMetadata.xml
- Deploy.sql - *generated deployment script*
- model.sql - *formated sql*
- model.xml
- Origin.xml
- postdeploy.sql *if exists*
## unpack Options
```
-h, --help Prints help information
--clean-output-path Flag for if output path should be cleaned before
extraction
--target-database Target database name used for deploy script, if not
specified DAC Package name without extension is used
--deploy-create-new-database Flag that specifies whether the existing database will be
dropped and a new database created before proceeding with
the actual deployment actions. Acquires single-user mode
before dropping the existing database (default false)
--deploy-script-database-options Deployment script flag that specifies whether the
database options in the target database should be updated
to match the source model (default false)
--deploy-script-ignore-permissions Deployment script flag that specifies whether to exclude
all permission statements from consideration when
comparing the source and target model (default false)
--deploy-script-exclude-object-type Deployment script setting to exclude object types
```