Which Collation is Used to Convert NVARCHAR to VARCHAR in a WHERE Condition? (Part B of 2: “Rabbit”)

Who will win "Who's Collation is it Anyway?" Database Collation is ahead, but Column Collation isn't about to give up.

Which Collation is Used to Convert NVARCHAR to VARCHAR in a WHERE Condition? (Part A of 2: “Duck”)

Microsoft says string literals not prefixed with "N" are converted to the Code Page of the Database OR referenced column. Is that true?

Sessions, Temporary Objects, and the Afterlife

Global temp objects drop automatically when Sessions end, right? But when do they end? Think you know? Are you sure?

Line-Continuation in T-SQL

Some (or maybe most?) languages and operating system command shells allow for breaking up long lines into multiple lines (i.e. lines separated by hitting Enter / Return). This is accomplished by ending a line with a particular character that indicates that the line is not ending. For operating system shells this means that the command… Continue reading Line-Continuation in T-SQL

All New Collations in SQL Server 2017 Implicitly Support Supplementary Characters

SQL Server 2017 adds 68 new Collations, but none end with "_SC". This seems to be due to Supplementary Characters being supported by default (which is great ūüėļ).

SQLCLR vs. SQL Server 2017, Part 6: ‚ÄúTrusted Assemblies‚ÄĚ ‚Äď Whitelisted Assemblies can’t do Module Signing

"Trusted Assemblies", a new feature starting in SQL Server 2017, is a means of whitelisting Assemblies that one feels pose no threat, and can be created (and used) without needing to be a) signed and b) have a corresponding signature-based Login that has been granted the UNSAFE ASSEMBLY permission. In Part 4 of this series… Continue reading SQLCLR vs. SQL Server 2017, Part 6: ‚ÄúTrusted Assemblies‚ÄĚ ‚Äď Whitelisted Assemblies can’t do Module Signing

Clustered Index Uniquifier Existence and Size

In SQL Server, Clustered Indexes created without the UNIQUE keyword must guarantee unique key values by adding a hidden "uniquifier". But how big is this field, and is it always there?

SQLCLR vs. SQL Server 2017, Part 5: ‚ÄúTrusted Assemblies‚ÄĚ – Valid Use Cases?

In the previous post in this series on SQLCLR in SQL Server 2017 ‚ÄĒ Part 4: ‚ÄúTrusted Assemblies‚ÄĚ ‚Äď The Disappointment ‚ÄĒ we looked at what the "Trusted Assemblies" feature is, what it meant to do, the problems with it, and what the better and more appropriate approach is. "Trusted Assemblies" is a simple mechanism… Continue reading SQLCLR vs. SQL Server 2017, Part 5: ‚ÄúTrusted Assemblies‚ÄĚ – Valid Use Cases?

SQLCLR vs. SQL Server 2017, Part 4: ‚ÄúTrusted Assemblies‚ÄĚ – The Disappointment

"Trusted Assemblies", introduced in RC1 of SQL Server 2017, seems like a reasonable fix for one, if not two, problems resulting from the new "CLR strict security" setting. But are there any problems with it? And even if not (don't worry, there are), might there be a better approach? Perhaps something simple that was overlooked?

SQLCLR vs. SQL Server 2017, Part 3: “CLR strict security” – Solution 2

Welcome back, everyone. In the previous post in this series, I explained how to work within the new SQLCLR security restriction in SQL Server 2017 (i.e. that all Assemblies need to be signed and have a corresponding Login that has been granted the UNSAFE ASSEMBLY permission). That approach is 22 steps, but they are all… Continue reading SQLCLR vs. SQL Server 2017, Part 3: “CLR strict security” – Solution 2