- August 26, 2016Published:
- SQL ServerTechnology:
- MCP, MCSACredit toward certification:
Developing SQL Databases
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.
Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.
Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.
If you have concerns about specific questions on this exam, please submit an exam challenge.
If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.
- Design and implement database objects (25–30%)
Design and implement a relational database schema
- Design tables and schemas based on business requirements, improve the design of tables by using normalization, write table create statements, determine the most efficient data types to use
Design and implement indexes
- Design new indexes based on provided tables, queries, or plans; distinguish between indexed columns and included columns; implement clustered index columns by using best practices; recommend new indexes based on query plans
Design and implement views
- Design a view structure to select data based on user or business requirements, identify the steps necessary to design an updateable view, implement partitioned views, implement indexed views
Implement columnstore indexes
- Determine use cases that support the use of columnstore indexes, identify proper usage of clustered and non-clustered columnstore indexes, design standard non-clustered indexes in conjunction with clustered columnstore indexes, implement columnstore index maintenance
- Design and implement a relational database schema
- Implement programmability objects (20–25%)
Ensure data integrity with constraints
- Define table and foreign key constraints to enforce business rules, write Transact-SQL statements to add constraints to tables, identify results of Data Manipulation Language (DML) statements given existing tables and constraints, identify proper usage of PRIMARY KEY constraints
Create stored procedures
- Design stored procedure components and structure based on business requirements, implement input and output parameters, implement table-valued parameters, implement return codes, streamline existing stored procedure logic, implement error handling and transaction control logic within stored procedures
Create triggers and user-defined functions
- Design trigger logic based on business requirements; determine when to use Data Manipulation Language (DML) triggers, Data Definition Language (DDL) triggers, or logon triggers; recognize results based on execution of AFTER or INSTEAD OF triggers; design scalar-valued and table-valued user-defined functions based on business requirements; identify differences between deterministic and non-deterministic functions
- Ensure data integrity with constraints
- Manage database concurrency (25–30%)
- Identify DML statement results based on transaction behavior, recognize differences between and identify usage of explicit and implicit transactions, implement savepoints within transactions, determine the role of transactions in high-concurrency databases
Manage isolation levels
- Identify differences between Read Uncommitted, Read Committed, Repeatable Read, Serializable, and Snapshot isolation levels; define results of concurrent queries based on isolation level; identify the resource and performance impact of given isolation levels
Optimize concurrency and locking behavior
- Troubleshoot locking issues, identify lock escalation behaviors, capture and analyze deadlock graphs, identify ways to remediate deadlocks
Implement memory-optimized tables and native stored procedures
- Define use cases for memory-optimized tables versus traditional disk-based tables, optimize performance of in-memory tables by changing durability settings, determine best case usage scenarios for natively compiled stored procedures, enable collection of execution statistics for natively compiled stored procedures
- Implement transactions
- Optimize database objects and SQL infrastructure (20–25%)
Optimize statistics and indexes
- Determine the accuracy of statistics and the associated impact to query plans and performance, design statistics maintenance tasks, use dynamic management objects to review current index usage and identify missing indexes, consolidate overlapping indexes
Analyze and troubleshoot query plans
- Capture query plans using extended events and traces, identify poorly performing query plan operators, create efficient query plans using Query Store, compare estimated and actual query plans and related metadata, configure Azure SQL Database Performance Insight
Manage performance for database instances
- Manage database workload in SQL Server; design and implement Elastic Scale for Azure SQL Database; select an appropriate service tier or edition; optimize database file and tempdb configuration; optimize memory configuration; monitor and diagnose scheduling and wait statistics using dynamic management objects; troubleshoot and analyze storage, IO, and cache issues; monitor Azure SQL Database query plans
Monitor and trace SQL Server baseline performance metrics
- Monitor operating system and SQL Server performance metrics; compare baseline metrics to observed metrics while troubleshooting performance issues; identify differences between performance monitoring and logging tools, such as perfmon and dynamic management objects; monitor Azure SQL Database performance; determine best practice use cases for extended events; distinguish between Extended Events targets; compare the impact of Extended Events and SQL Trace; define differences between Extended Events Packages, Targets, Actions, and Sessions
- Optimize statistics and indexes
Who should take this exam?
This exam is intended for database professionals who build and implement databases across organizations and who ensure high levels of data availability. Their responsibilities include creating database files, data types, and tables; planning, creating, and optimizing indexes; ensuring data integrity; implementing views, stored procedures, and functions; and managing transactions and locks.
More information about exams
- Preparing for an exam
We recommend that you review this exam preparation guide in its entirety and familiarize yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats, and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.
This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all of the topics listed in the "Skills measured" section.