Three ways to read the source of a stored procedure, and the trap in all of them: without VIEW DEFINITION, OBJECT_DEFINITION returns NULL rather than an error, which looks exactly like the procedure does not exist.
Azure Data Studio was retired on 28 February 2026. Where each job it did lives now: SSMS 22 for administration, VS Code with the MSSQL extension for Mac, Linux and notebooks, and how to bring your connections across.
TempDB belongs to the whole instance, so the question is never whether it is full, it is which session filled it. One query names the session, and user objects, internal objects and the version store each end a different way.
The service will not come up and Windows only says 1067. Where the real reason lives, what errors 17113 and 17058 are actually telling you, and what to do when the log says nothing at all.
Login failed, and the reason is the password: 18488 must be changed, 18487 expired. Check the login, reset it in the right order (Msg 15128 if you do not), and find the next one before it expires.
TempDB on the C: drive is a problem waiting for a busy day. It can grow very large, very quickly, sometimes within minutes under the right workload, and when it fills the OS drive it takes the whole server down with it. Moving the tempdb files to their own drive is a standard best practice,…
Most people searching for “random numbers in SQL Server” want one of two things: SQL Server gives you two common tools for this: RAND() and NEWID(). They solve different problems, and confusion usually starts when they are treated as interchangeable. This post shows how to use both, starting with simple examples, and explains why they…
Msg 3906 means SQL Server considers the target database read-only. Check its state and recovery role before changing it. A log-shipping secondary may be read-only by design.
RESTORE VERIFYONLY returned Msg 3203 on a truncated backup in a lab test. The header was readable, but the file was incomplete. Direct RESTORE returned Msg 3287 instead.
A symptom router for the slow SQL Server call. One check per step, in the order that finds the fault fastest, each handing off to the post that owns it.