What I Write About…
Databases
Helpful posts about SQL Server, Merge Replication and how to tune your databases for maximum performance.
Programming
Mostly focusing on C# and JavaScript but I enjoy exploring other languages such as F# and Python.
Scripting
Automation is the key to productivity, I cover innovative solutions to everyday problems using automated scripts.
Web Development
I cover all aspects of web development with a particular focus on application architecture and security.

Exploring SQL Server JSON mapping support in Entity Framework Core 9
JSON is a ubiquitous format for defining structured data, and it is increasingly common to see it being stored directly in databases that are primarily relational in nature. Over the past several years, Entity Framework Core has steadily improved its support for JSON, culminating in first-class JSON mapping support in EF Core 8 and EF…
InSQL
Working with JSON functions in SQL Server
JSON has become the de facto standard for data interchange and its ubiquity in modern software applications makes the support that SQL Server offers for working with JSON more relevant than ever. Whether you’re developing APIs, dealing with semi-structured data, or storing configuration, the ability to handle JSON natively at the SQL level will help…
Using AzCopy to transfer a large number of files between Azure Blob Storage Containers
Azure Blob Storage is Microsoft’s primary cloud storage solution and can handle massive amounts of unstructured data. Whether you need to store images, videos, documents, or log files, it offers a secure and scalable platform for online file storage that you can trust. Within an Azure Blob Storage account, you can configure one or ‘containers’…
InSQL
How to output inserted and source IDs when cloning SQL Server table data
If you write T-SQL scripts for SQL Server or Azure SQL databases, you will likely come across the requirement to ‘clone’ existing data at some point along the way. It’s usually quite straightforward to accomplish a clone operation when copying data from a single table to another table, but how about when you need to…
How to keep the host window open after executing a PowerShell script
When working with PowerShell scripts, it’s common to encounter scenarios where you want to launch an automated operation on demand by running the script file and then viewing its output at the end of the process. On a modern Windows system, you can right-click on a PowerShell file and select the Run with PowerShellĀ option from…
InSQL
Using the STRING_AGG function in T-SQL to concatenate row data
If you’ve ever worked with SQL Server and found the need to concatenate data from table rows into a string value, you may remember having to resort to using features like FOR XML PATH in combination with STUFF to achieve the desired result. While these approaches are functional, they tend to result in code that…
InSQL
How to print SQL Server messages to the output immediately
When executing long-running SQL commands, it is often important to get feedback on the operations being performed. In the context of SQL Server, the PRINT statement offers the ability to output basic informational messages that can help monitor progress and debugging. While the PRINT statement provides a simple means of outputting a message, it can…
InSQL
Introduction to the SQL Server MERGE statement
The MERGE statement in SQL provides a streamlined way to insert, update, and delete data as part of a single batch statement. With the potential benefits of cleaner code and performance improvements for certain scenarios, the MERGE statement is a great tool to have up your sleeve. In this article, I will demonstrate how the…
Operating on data via a SQL Server Stored Procedure efficiently with Table-Valued Parameters using C#
Sometimes when developing an application that interacts with SQL Server, you may find the need to process a data set such that only one round trip needs to be made to and from the database server. The operation that is being carried out may be intended to operate on one set of data, or batches…Categories
- APIs (12)
- Career (4)
- NoSQL (3)
- Programming (47)
- Scripting (19)
- Security (16)
- SQL (25)
- SQL Server Merge Replication (4)
- Tools (4)
- Web (26)
Recent Posts


