DP-700 · Workspace Lifecycle Management
23 cards
Database Projects
-
Quick check
A team creates tables directly in a test database and wants their definitions tracked like application code. What does committing the database from the Source control panel do?
AIt exports the rows of each table as data files
Commit captures the definitions of the objects, not the data those tables contain.
BIt rebuilds the database from whatever the repository already holds
That is the update direction, which applies repository code to the database instead of capturing it.
CIt converts the live object definitions into repository code
Right. The service reads the object definitions from the live database and writes them as code to the remote repository.
3 / 23
-
Quick check
What does the SQL project file in the repository hold, and who maintains it?
ADatabase metadata, generated and updated automatically by Fabric
Right. The project file carries metadata about the database, and the source control integration generates and updates it — which is why manual edits are overwritten.
BThe rows of every lookup table, maintained by developers
Lookup rows belong in a post-deployment script, not in the project metadata.
CNothing, because Fabric excludes that file from the repository
The project file is part of the repository; what Fabric excludes from the build is the .sharedQueries folder.
6 / 23
-
Quick check
A developer works in Visual Studio Code and must catch syntax problems before the change reaches the remote branch, yet the change still has to be applied through Fabric. Which workflow fits?
APush the .sql files unbuilt and let Fabric correct the syntax
Nothing corrects invalid syntax for you: an unbuilt file that fails validation makes the later database update fail.
BBuild the project, commit, push, then Update in Fabric
Right. The local build validates the syntax and produces a dacpac before the commit, and the Fabric update then applies the repository code to the database.
CEdit the generated project file in Fabric, then copy the table locally
The generated project file is overwritten by Fabric, and copying a table does not put a definition into source control.
9 / 23
-
Keep your progress in the app
That’s 3 of 9 quick checks. In the app they stay answered, and every lesson remembers where you left off.
-
Quick check
Which sequence describes an update of a Fabric SQL database from source control?
ABuild the SQL project, produce a dacpac, then publish the differences
Right. The build validates the syntax and creates the dacpac, and SqlPackage then determines and applies the changes needed to match it.
BCopy the table rows first, then infer the object definitions
Table data plays no part: the update works from object definitions, never from rows.
CPublish the raw .sql files, then build a project to check them
Validation comes first by design, so the files are never published before the project has been built.
12 / 23
-
Quick check
An update fails because a committed file uses a feature Fabric does not support. What has to happen before the work continues?
AFabric substitutes a supported feature and finishes the publish
Fabric does not rewrite unsupported code; the update simply fails.
BThe failed commit is left for the next update
Leaving it changes nothing, because every later update tries to apply the same unusable state.
CThe change is reverted manually in source control
Right. The change has to be manually reverted in source control before the workflow can continue.
14 / 23
-
Quick check
A database needs a supported compatibility-level setting that source control and deployment pipelines do not carry. How should the team apply it?
ABy recording it in the generated project file before committing
The project file is regenerated by Fabric, and database-level settings are outside what the integration carries anyway.
BWith a T-SQL script run after deployment
Right. Settings that T-SQL can apply after database creation are applied by modifying the database with scripts after deployment.
CBy letting the branch workspace inherit it from the source database
A branched workspace receives committed object definitions only; it does not inherit database-level settings.
16 / 23
-
Quick check
A lookup table must hold the same controlled rows after every update from source control and every pipeline deployment, and the rows should stay reviewable as code. What belongs in the project?
AA one-off INSERT run by hand after each release
A manual insert is neither reviewable nor automatic, and it would have to be repeated in both delivery paths.
BA copy of the table exported as a data file at every release
An exported data file sits outside the project and is not applied by an update or a deployment.
CA repeatable MERGE set as a post-deployment script
Right. A MERGE stored in Shared Queries and set as a post-deployment script is versioned with the project and runs during both source-control updates and pipeline deployments.
19 / 23
-
Quick check
A team needs isolated database development with pull-request review, and merging approved code must not change the primary database until the release manager decides. Which implementation gives that?
ABranch out to a new workspace, merge the pull request, then update the primary workspace
Right. Branch-out isolates the work, the pull request provides the review, and the separate update keeps the release decision in the team's hands.
BEdit the primary database directly and open a pull request afterwards
Editing the primary database directly removes the isolation the scenario asks for and reviews the change after it already exists.
CBranch out and rely on the merge to publish the primary database
Completing a pull request updates source control only; the primary database changes when that workspace is updated.
21 / 23
-
Quick check
Which statement correctly summarizes how a database project is built and applied?
AA build copies the table rows into a dacpac, and Fabric keeps whatever a developer writes in the project file
The build packages object definitions rather than rows, and Fabric regenerates the project file on its next commit.
BA build validates syntax into a dacpac, and SqlPackage then applies only the differences
Right. Validation and packaging come first, and the publish operation works out the changes needed to match the dacpac.
CA failed update repairs itself on the following run, and collation travels with the project into every environment
A failed update has to be reverted manually, and database-level settings such as collation are outside the integration.
23 / 23
-
9 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.
The whole course, on your phone
Lessons you can read, audio you can listen to on the way to work, and practice that remembers what you got wrong.