Scripts

Technical Article

Real-Time SQL Server to BigQuery Streaming ETL using CDC

CDC Changes: The script queries the CDC tables in SQL Server to retrieve the changes (inserts, updates, deletes) since the last sync. Each change is processed with a mapped operation type (INSERT, UPDATE, DELETE).
Real-Time Streaming to BigQuery: The captured changes are streamed directly to BigQuery using its real-time insert_rows_json method, avoiding the need for batch uploads via Google Cloud Storage.
Tracking Last Sync Time: The script tracks the last synchronization time and updates it after every successful sync, ensuring no data is missed.
Low Latency: By continuously querying the CDC tables and streaming the changes, the script achieves near real-time data synchronization.

(1)

You rated this post out of 5. Change rating

2024-11-13 (first published: )

638 reads

Technical Article

Concatenating Multiple Row Values into a Single Comma-Separated List

In scenarios where you need to consolidate multiple rows into a single, comma-separated value, you can achieve this using FOR XML PATH. This script demonstrates how to retrieve volunteer data and display the days they have selected for participation.

You rated this post out of 5. Change rating

2024-11-11 (first published: )

1,423 reads

Technical Article

While Loop in T-SQL

Often, we encounter situations where we need to loop through a dataset to process or update records iteratively. In such cases, I use WHILE loop like below. The example below demonstrates how a WHILE loop can be used to iterate Sales records. This approach is particularly effective when working with a numerical or date column, […]

(2)

You rated this post out of 5. Change rating

2024-10-15

556 reads

Technical Article

Comprehensive SQL Performance Monitoring and Optimisation Script

This script monitors and reports the execution statistics of SQL statements over a specified period, capturing metrics such as execution counts, CPU time, I/O operations, and elapsed time. It provides a comprehensive view of query performance, aiding in the diagnosis of performance issues and identifying problematic SQL queries in the database.

(1)

You rated this post out of 5. Change rating

2024-07-29 (first published: )

2,336 reads

Technical Article

Creating a CSV Parser in Apex

Salesforce supports the conversion of only csv files utilizing Apex. However if you use their LWC - js platform that provides wide options to bring in libraries to parse all kinds of file types. Here in this script i would be providing basic idea of functions utilizing the parsing logic along with options to iterate […]

(1)

You rated this post out of 5. Change rating

2024-05-21

8,719 reads

Blogs

T-SQL Tuesday #192: What career risks have you taken?

By

I’m honored to be hosting T-SQL Tuesday — edition #192. For those who may...

AI: Blog a Day – Day 3: LLM Models – Open Source vs Closed Source

By

Continuing from Day 2 , we learned introduction on Generative AI and Agentic AI,...

How to Parameterize Fabric Linked Services in Azure Data Factory for Azure Devops Deployment

By

Quite the title, so let me set the stage first. You have an Azure...

Read the latest Blogs

Forums

Rollback vs. Roll Forward

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Rollback vs. Roll Forward

Foreign Keys - Foes or Friend?

By utsav

Comments posted to this topic are about the item Foreign Keys - Foes or...

Fun with JSON I

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Fun with JSON I

Visit the forum

Question of the Day

Fun with JSON I

I have some data in a table:

CREATE TABLE #test_data
(
    id INT PRIMARY KEY,
    name VARCHAR(100),
    birth_date DATE
);

-- Step 2: Insert rows  
INSERT INTO #test_data
VALUES
(1, 'Olivia', '2025-01-05'),
(2, 'Emma', '2025-03-02'),
(3, 'Liam', '2025-11-15'),
(4, 'Noah', '2025-12-22');
If I run this query, how many rows are returned?
SELECT *
FROM OPENJSON(
     (
         SELECT t.* FROM #test_data AS t FOR JSON PATH
     )
             ) t;

See possible answers