DP-700 · Workspace Lifecycle Management
33 cards
Warehouse Database Projects
-
Quick check
What does a database project for Fabric Data Warehouse hold?
AThe rows of the warehouse tables, exported as files
A project describes the schema. Table rows are not part of it, and a publish changes the schema of the target to match the project.
BThe schema objects of the warehouse, as T-SQL definition files
Right. Tables, views, stored procedures, and functions are kept as .sql files that you build into a dacpac and publish.
CThe reports and semantic models built on the warehouse
Reports and semantic models are other Fabric items. The project only holds the definitions of warehouse objects.
2 / 33
-
Quick check
A developer has Visual Studio Code with the SQL Database Projects and SQL Server (mssql) extensions, and is a Contributor in the workspace. The project cannot be built. What is most likely missing?
AThe Admin role in that workspace
Contributor or higher is enough, so the role is not the problem here.
BA Git connection for the workspace
Building a project is local work in Visual Studio Code. It does not need the workspace to be connected to Git.
CThe .NET SDK on the workstation
Right. The .NET SDK is required to build and publish database projects, and it is the one prerequisite the developer does not have.
4 / 33
-
Quick check
A team already has a warehouse with 40 tables and wants a database project that starts with those definitions. What should a developer do in Visual Studio Code?
ACreate a connection profile, then use Create Project From Database
Right. With a connection profile for the warehouse, Create Project From Database extracts the project files from it.
BUse Database Projects: New, then Publish to pull the tables in
Publish goes the other way: it changes the warehouse to match the project. Publishing an empty project does not bring definitions into it.
CUse Database Projects: New with the SQL analytics endpoint as target
A new project starts empty, and the server name of a warehouse is different from the SQL analytics endpoint.
7 / 33
-
Keep your progress in the app
That’s 3 of 12 quick checks. In the app they stay answered, and every lesson remembers where you left off.
Keep reading hereOpens in your browser. Nothing to install.
Start studying -
Quick check
A developer adds the package reference to Microsoft.SqlServer.Dacpacs.FabricDw but leaves out the DatabaseVariableLiteralValue line. A stored procedure in the project reads sys.views. What should the developer expect?
AThe build fails at once and names the missing line
The build is not where the problem shows. It still succeeds, which is what makes this mistake hard to spot.
BThe build succeeds, and Publish or Script can then fail
Right. Without that metadata the build works, and Publish and Script actions can fail as soon as code references objects in the sys schema.
CThe build and the publish both succeed, because the line is optional
The line is needed in practice. Once code references sys objects, the publish can fail with error SQL72033.
10 / 33
-
Quick check
A developer adds a view file to the project and builds it successfully, but cannot find the view in the warehouse. Why?
AThe project has been built, but it has not been published
Right. A build validates the objects and produces the dacpac in bin/debug. The warehouse changes only when the project is published.
BA build writes to the warehouse only for tables
A build never writes to the warehouse, for any kind of object. It only produces the dacpac file.
CThe default terminal was not PowerShell
A wrong terminal makes the build fail. Here the build succeeded, so the missing step is the publish.
12 / 33
-
Quick check
A team publishes the same warehouse project to dev, test, and production, and each environment needs its own publish options. How should the team handle this?
ACreate one project per environment, each with its own files
The schema is the same in all three, so one project is enough. What differs is the set of publish options.
BEdit the .sqlproj file before each publish
The .sqlproj file describes the project and its references. The options of a publish are saved in a publish profile.
CSave one publish profile per environment and load the right one
Right. A publish profile is a .publish.xml file with the publish options, and a project can have different profiles for different environments.
15 / 33
-
Quick check
A dev warehouse is full of tables left over from experiments, and the team wants every publish to remove whatever is not in the project. Which setting does that?
ABlockOnPossibleDataLoss set to False
False only allows a deployment to continue when data can be lost. It does not make the publish look for objects outside the project.
BDropObjectsNotInSource set to True
Right. DropObjectsNotInSource drops objects in the target that are not present in the project source, which is its intended use in dev and test.
CBlockOnPossibleDataLoss set to True
True stops a deployment that could lose data. It protects objects and never removes them.
18 / 33
-
Quick check
A PostDeploy script contains a plain INSERT of three reference rows. The first publish works. What is the risk on the second publish?
AThe script is skipped, because PostDeploy runs only once per warehouse
The script runs after the schema deployment on every publish, which is why it has to be safe to repeat.
BThe script runs before the schema change and finds no table
PostDeploy runs after the schema deployment. The script that runs before it is PreDeploy.
CThe script runs again and fails or duplicates the rows
Right. The script is not idempotent. It must give the same result on every run, for example by checking which rows already exist.
22 / 33
-
Quick check
A workspace with a warehouse is updated from Git after a merge that changed two views. How does Fabric apply the change?
AIt drops the warehouse and creates it again from the .sql files
Nothing is recreated. Synchronization is incremental and only touches what differs.
BIt deploys only the schema differences, with DacFx
Right. Fabric uses DacFx-based incremental schema deployment, so only the relevant schema differences are applied to the warehouse.
CIt replaces XMLA.json and rebuilds the semantic model
XMLA.json is excluded from commits and updates and is ignored when the workspace is synchronized from Git.
24 / 33
-
Quick check
A deployment pipeline promotes a warehouse from Dev to a Prod warehouse that was created with a different collation, and the deployment reports success. What should the team conclude?
ASuccess means that the pipeline converted the collation of Prod
The collation metadata is not reconciled. Success of the operation does not mean the collations now match.
BThe scenario is not supported, and metadata errors can still appear
Right. With different collations the workflow is not officially supported: it might finish without errors and still leave metadata errors.
CThe deployment was a selective commit that left the collation out
Selective commit is a Git idea, and warehouses do not support it. It has nothing to do with collation in a pipeline.
28 / 33
-
Quick check
One analyst builds a warehouse alone for a short proof of concept. There is no team, no need for history, and no test or production environment. Which mode fits?
AFabric web without Git integration
Right. Live development without version control fits individual work with no collaboration, no version history, and no pre-production environments.
BExternal CI/CD with the SqlPackage CLI
External CI/CD automates build and deployment in Azure DevOps or GitHub, which is more than a one-person proof of concept needs.
CFabric deployment pipelines with three stages
Deployment pipelines promote content between stages, and this scenario has only one environment.
31 / 33
-
Quick check
Which statement about warehouse database projects is correct?
AA successful build applies the new objects to the target warehouse
A build validates the objects and produces a dacpac. The warehouse changes only on publish.
BDropObjectsNotInSource protects the objects that are missing from the project
It does the opposite: it drops objects in the target that are not present in the project source.
CGenerate Script shows the deployment T-SQL without changing the warehouse
Right. Generating the script makes no changes to the target warehouse, which is why it is the first step of a first deployment.
33 / 33
-
12 quick checks · then the test
In the app, finishing the quick checks opens this lesson’s 10-question test, and the ones you miss come back exactly when you’re about to forget them.
Take this lesson’s test → Next lesson: Create Deployment PipelinesOpens in your browser. Nothing to install.
Start studying
The whole course, on your computer and your phone
Lessons you can read, audio you can listen to on the way to work, and practice that remembers what you got wrong.
Opens in your browser. Nothing to install.
Start studying“This app is the ‘One Lake’ for preparing the certification exams. Really worth it.”
