Azure-Sql-Db

SQL Interview: 105 Database mail dependency on Exchange

SQL Interview: 105 Database mail dependency on Exchange

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Administration Level: Intro

Question:

You are configuring database mail so that applications can send emails.

Does database mail have a dependency on Microsoft Exchange ?

Answer:

No, Database Mail does not depend on Microsoft Exchange.

Database Mail in SQL Server:

2026-01-04

SSMS Tips and Tricks 8-3: Using split screens

SSMS Tips and Tricks 8-3: Using split screens

If you are working with really long script files in SSMS, you might need to work on more than one part of the script at the same time. Perhaps you need to work on a function, and also on the code that calls the function.

On the Window menu, there is a Split option.

When you first do this, you’ll see a split window with the same query at top and bottom:

2026-01-03

SQL Interview: 103 Stored procedures and transactions

SQL Interview: 103 Stored procedures and transactions

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Development Level: Medium

Question:

Does a stored procedure automatically provide a transaction i.e., if a statement within a stored procedure fails, are all previous data modification statements rolled back?

Answer:

No, a stored procedure does not automatically provide an implicit transaction.

2025-12-30

SQL Interview: 102 Checkpoint writes

SQL Interview: 102 Checkpoint writes

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Administration Level: Advanced

Question:

When checkpoint writes occur, is only committed data written, or is uncommitted data written?

If only committed data, explain why.

If both, explain why.

Answer:

Checkpoint is a background process that:

  • Flushes dirty pages (pages in memory that have been modified since they were read from disk) to disk.
  • Records a log sequence number (LSN) in the transaction log that marks the point at which the database is known to be consistent on disk.

This means that SQL Server doesn’t flush only committed transactions — it flushes all dirty pages, whether the transactions that modified them are committed or not.

2025-12-28

SQL Interview: 101 Restoring successful backups

SQL Interview: 101 Restoring successful backups

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Administration Level: Medium

Question:

If you have successfully created a SQL Server database backup, what could cause you to not be able to restore it, on the same server or another server ?

Answer:

A successful SQL Server backup does not guarantee that it can later be restored successfully. A few important points explain why:

2025-12-26

SQL: The most frequently misunderstood query plan operators

SQL: The most frequently misunderstood query plan operators

Execution plans are one of the most valuable tools in SQL Server for understanding how a query is executed. But even experienced developers and DBAs regularly misinterpret certain operators. Some of these operators look deceptively simple, others have subtle side effects, and a few behave differently depending on cardinality estimates or memory availability.

This post walks through the execution plan operators that are most frequently misunderstood, what they actually mean, and how to interpret them correctly.

2025-12-24

SQL: Parallel Programming In TSQL: Is It In Our Future?

SQL: Parallel Programming In TSQL: Is It In Our Future?

Upcoming processors are likely to have even more cores than now. Have you ever tried to write multiprocessor-style code? A friend of mine recently said that he learned some of this style of coding but later when he came back to it, he realised how much he thought he knew but didn’t.

For languages like T-SQL, we don’t have inherent support for multi-threading. In fact, the only trace I can see of this in T-SQL today is the ability to have multiple readers on a service broker queue.

2025-12-22

SQL Interview: 99 Table join order

SQL Interview: 99 Table join order

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Development Level: Medium

Question:

You are writing a query that involves inner joins across five tables. Does the order of the tables within the query affect the query plan?

Answer:

No. SQL Server determines the best order for you to join the tables in.

2025-12-21

SQL Interview: 98 Reading tables in non-clustered index order

SQL Interview: 98 Reading tables in non-clustered index order

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Development Level: Medium

Question:

If you are SELECTing from a table and the ORDER BY clause in your query is in the same order as a non-clustered index, will the non-clustered index be used?

Answer:

It might or it might not.

2025-12-19

SQL Interview: 97 Performance of well-formatted and laid-out SQL code

SQL Interview: 97 Performance of well-formatted and laid-out SQL code

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database.

Section: Development Level: Intro

Question:

A developer in your team has suggested that better formatted and laid-out SQL code will perform better?

Is this true?

Answer:

Because the optimiser reduces queries down to a format that it can work with the format of your code doesn’t make a difference. Better formatted code is more readable and maintainable though, so it’s always a good idea.

2025-12-17