Use GRANT SELECT ON SCHEMA for focused read access, test a loginless user, and check ownership chains and table-level DENY behavior.
Application Locks With sp_getapplock: One Job at a Time
Use sp_getapplock to serialize a job, compare transaction and session ownership, handle return codes, and inspect a two-session test.
SQL SERVER 2019 – Supports Compatibility Level from 2008 to 2019
Compatibility Level from 2008 to 2019 requires separating database migration from engine upgrade support. SQL Server 2019 supports levels 100 through 150.
UTF-8 Collations in SQL Server 2019: When They Save Space
Compare UTF-8 collations with NVARCHAR storage for English, European, and Asian text before converting indexes or clients.
RETURN Statement in a Stored Procedure: Exit Early
The RETURN statement ends a stored procedure at once and hands back one integer status code. This post builds a small demo, shows how to read the code, stops a procedure after a chosen step, and tests what RETURN does with NULL, text, open transactions and errors.
Nonclustered Columnstore Index on a Temp Table in SQL Server
A nonclustered columnstore index works on a temp table but not on a table variable. This post loads a temp table, builds the index, and measures the same aggregate query before and after. It also shows the error a table variable raises and when the build cost pays off.







