SQL Server Science
Technical Articles for the DBA / Developer
Home » Archives for Hannah Vernon

Performance Counters Over Time: Making sys.dm_os_performance_counters Tell the Truth

2026-06-26 · by Hannah Vernon · in performance

Run this query on any SQL Server and look at the number it gives you for Batch Requests/sec:

Transact-SQL
1
2
3
4
5
6
7
SELECT
      [counter_name]
    , [cntr_value]
FROM
    [sys].[dm_os_performance_counters]
WHERE
    [counter_name] = N'Batch Requests/sec';

On a server that has been up for a few weeks you will get something like…

I Called Myself Dumb in a Code Comment. I Was Wrong About the Cursor.

2026-06-25 · by Hannah Vernon · in Hot Takes

I went looking through an old reconciliation script this week, the kind you write once for a quarter-end reconciliation and forget about, and I found a note from my past self. Right above a cursor,…

Is Your SQL Server Using RC4 for Kerberos? Here’s How to Find Out

2026-06-24 · by Hannah Vernon · in security, tools

You probably haven’t thought about Kerberos encryption types recently. That’s fair; the protocol mostly “just works” and has for decades. But CVE-2026-20833 changed the calculus. Microsoft disclosed a Kerberos information disclosure vulnerability in January 2026…

Seeing Exactly Where SQL Server Stores Each Column

2026-06-23 · by Hannah Vernon · in Internals

You add a couple of varchar(max) columns to a table because you are not sure how big the values will get. Most rows hold a few dozen characters. A handful hold tens of thousands. Everything…

How SQL Server Stores DATETIME2, DATE, and TIME

2026-06-22 · by Hannah Vernon · in Internals

In I took a DATETIME apart byte by byte: two 4-byte integers, a date counted from 1900 and a time counted in awkward three-hundredths of a second. That awkward tick is exactly what Microsoft set…

How SQL Server Stores a DATETIME, Down to the Bytes

2026-06-21 · by Hannah Vernon · in Internals

Every DBA eventually asks the same odd little question. You insert ‘2024-03-14 09:26:53.999’, read it back, and it says 09:26:54.000 instead. Store a value ending in .456 and it comes back as .457. Nothing is…

1 2 … 41 Next »

Search

Categories

  • AI for DBAs
  • announcements
    • events
  • basics
    • localization
  • configuration
  • Data Architecture
  • DMVs
  • documentation
  • extended-events
  • Git for DBAs
  • High Availability
  • Hot Takes
  • Internals
  • maintenance
    • patching
  • Opinion
  • performance
  • PostgreSQL
  • Professional Development
  • recovery
  • reporting
  • security
    • data security
  • service broker
  • SQL Server Agent
  • statistics
  • sys
  • t-sql
    • xml
  • tools
    • data masking
    • wsus
  • troubleshooting
  • Uncategorized

Pages

  • About SQL Server Science
  • Get Better Help with a Minimal, Complete, and Verifiable Example, or MCVE
  • Privacy Policy

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.

To find out more, including how to control cookies, see here: Cookie Policy

Copyright © 2026 SQL Server Science