Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
Ad for State of Database Landscape survey
The Voice of the DBA
 

he Journey to PostgreSQL (or anything)

Most of you reading this work in technology, and I assume that you've had to learn something new on the job. Technology is constantly evolving, even on our existing platforms. On top of that, we are regularly given tasks that are outside of our current skill sets. Maybe not far outside, but to meet the changing demands of our jobs, we need to learn new things.

I ran across an interesting post (on a new site) from Brent Ozar. I think that guy writes as much as me, but he wrote this one: Why I Started Using Postgres (And You Might Too). It's a little provocative, but there are good posts on things Brent learned in PostgreSQL. I won't go into whether learning PostgreSQL is a good idea.

The thing that struck me in this post is that Brent knew that this was a risk. He was worried about moving to a new platform, despite all the reasons he had for doing so. I would bet a lot of us are in similar situations. It might not be PostgreSQL we are being asked to learn, but it could be Fabric, Databricks, Python, PowerShell, CosmosDB, or whatever other thing someone in our organization thought was cool.

The best sentence in here is this: "I gambled that I’d be able to learn how to do performance tuning quickly enough, ..., in time to head off issues." That's the attitude I've often had in my career when I get requests to do something new.

I'm willing to bet on myself.

You should be willing to do so as well. I know you don't want to work 80 hours a week to learn, or get stuck trying to solve problems every weekend with new tech. However, I hope you are willing to do that for a week or one weekend. You're willing to do some reading at night or experimenting during lunch to make something work.

You're going to have tough times. You're going to question if you can make something work. Getting comfortable with being uncomfortable (for short periods) is how we grow and learn. It's how we take leaps forward.

It's how we take advantage of opportunities that are in front of us.

There are always opportunities to make a difference, to effect change, to build something you are proud of or that your organization values. Those stressful times when you drive to make something new succeed and have to learn in the process are the times when you can take advantage of an opportunity.

Steve Jones - SSC Editor

Join the debate, and respond to today's editorial on the forums

Ad for State of Database Landscape survey
 
 Featured Contents
SQLServerCentral Article

Building a RESTful API with FastAPI and PostgreSQL

sabyda from SQLServerCentral

This article shows how to use Python to create a REST API for your application that developers can use to access the database.

External Article

T‑SQL BULK INSERT vs OPENROWSET: CSV Imports, File Access Gotchas, and A PowerShell Script

Additional Articles from MSSQLTips.com

Most SQL bulk insert and SQL Server openrowset tutorials skip file access issues that can stop imports cold. Both the bulk insert statement and openrowset function rely on the SQL Server service account to read a source file. The SQL Server service account must have read permission on the file or its folder. It is also convenient to have read & execute as well as list folder content permissions.

Blog Post

From the SQL Server Central Blogs - Announcements from the Microsoft Fabric Community Conference

James Serra from James Serra's Blog

A bunch of new features for Microsoft Fabric were announced at the Microsoft Fabric Community Conference (FabCon Vienna) recently. Here are all the new features that I found most interesting, with...

Blog Post

From the SQL Server Central Blogs - The Challenge of Implicit Transactions: #SQLNewBlogger

Steve Jones - SSC Editor from The Voice of the DBA

I saw an article recently about implicit transactions and coincidentally, I had a friend get caught by this. A quick post to show the impact of this setting. Another...

Definitive Guide to DAX cover

The Definitive Guide to DAX: Business Intelligence for Microsoft Power BI, SQL Server Analysis Services, and Excel

Site Owners from SQLServerCentral

Now expanded and updated with modern best practices, this is the most complete guide to Microsoft’s DAX language for business intelligence, data modeling, and analytics. Expert Microsoft BI consultants Marco Russo and Alberto Ferrari help you master everything from table functions through advanced code and model optimization.

 

 Question of the Day

Today's question (by Steve Jones - SSC Editor):

 

A Common Split

What happens when I run this code:
DECLARE @s VARCHAR(1000) = 'apple, pear, peach'
SELECT *
FROM STRING_SPLIT(@s, ', ')

Think you know the answer? Click here, and find out if you are right.

 

 

 Yesterday's Question of the Day (by Steve Jones - SSC Editor)

Estimated Rows

I have two calls to the GENERATE_SERIES TVF in this code:

SELECT   TOP 10 gs.value
FROM     GENERATE_SERIES(1, 10) AS gs
ORDER BY NEWID ()
OPTION (RECOMPILE);
go
DECLARE @a int = 10;
SELECT   TOP (@a) gs.value
FROM     GENERATE_SERIES(1, @a) AS gs
ORDER BY NEWID ()
OPTION (RECOMPILE);

In the actual query plans, what is the estimated number of rows for each batch?

Answer: 10 and 50

Explanation: For some functions, the optimizer seems to estimate 50 when it doesn't have good statistics on the data itself. In this case, if TOP is specified with a scalar value, that is the estimate. However, if the value is in a variable, the estimate is 50. This isn't documented as of Sept 2025. Ref: GENERATE_SERIES - https://learn.microsoft.com/en-us/sql/t-sql/functions/generate-series-transact-sql?view=sql-server-ver17

Discuss this question and answer on the forums

 

 

 

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.


SQL Server 2019 - Development
extended events to spy on our server between 8 and 9 am - Hi, our peer who owns a remote mysql server from which we extract warehouse data daily between 8 and 9am thru ssis says there was nothing unusual nor any missing indexes this morning when querying one part of his database timed out with the error you see below. Our dba says it was mysql's fault. […]
visual studio seems to lose "provider" on pkg imports - hi, just to get this part out of the way, if my intended target for an ssis project is 2019, i always change the project over to 2019 before starting whatever i'm going to do.  Locally and on my vm i work in vs 2022. It might be just as of late, when i import […]
Editorials
The Improvement Limit - Comments posted to this topic are about the item The Improvement Limit
Technological Dinosaurs or Social Dinosaurs? - Comments posted to this topic are about the item Technological Dinosaurs or Social Dinosaurs?
Job Postings
SQL Server DBA - Immediate need - Immediate need for a hands-on SQL Server DBA. This is a greenfield opportunity to help a fast-growing company develop custom solutions for its key systems from the ground up. The initial contract term is 6 months (extendable). Must be currently located in the U.S. and authorized to work for any employer in the U.S. We […]
Article Discussions by Author
AlwaysON health check alerts - Comments posted to this topic are about the item AlwaysON health check alerts
Bat and SQL script to generate DB user permissions for all Databases in SQL server - Comments posted to this topic are about the item Bat and SQL script to generate DB user permissions for all Databases in SQL server
PWDCompare - Comments posted to this topic are about the item PWDCompare
Migrate SSRS Reports to a New Server in Just a Few Clicks - Comments posted to this topic are about the item Migrate SSRS Reports to a New Server in Just a Few Clicks
DBCC CHECKIDENT - Comments posted to this topic are about the item DBCC CHECKIDENT
Distributed Availability Group Health: T-SQL and Zabbix - Comments posted to this topic are about the item Distributed Availability Group Health: T-SQL and Zabbix
Stairway to Azure SQL Hyperscale – Level 3: RBPEX Caching Layer Internals - Comments posted to this topic are about the item Stairway to Azure SQL Hyperscale – Level 3: RBPEX Caching Layer Internals
Vector Datatype Dimensions - Comments posted to this topic are about the item Vector Datatype Dimensions
SQL Server 2022 - Administration
Restore Job fails in Replication - Dear Folks, Restore jobs in my SQL2022 Standard edition replication were failing on a new setup on windows 2022 standard edition, 64 bits.The log has 'Access denied error'  but the system admin says he has added the service account to the windows admin group..Normal copy \paste between the two server folders works well though...Any comment […]
SQL Server 2022 - Development
ERD Tools recommendation - Hey All, I'm looking for a free ERD tool. Does anyone have any recommendations? Thanks!
 

 

RSS FeedTwitter

This email has been sent to {email}. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com. This newsletter was sent to you because you signed up at SQLServerCentral.com.
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
webmaster@sqlservercentral.com

 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -