Problems displaying this newsletter? View online.
SQL Server Central
Featured Contents
Question of the Day
Redgate SQL Source Control
The Voice of the DBA

The Ongoing Costs of Building Software

This editorial was originally published on Aug 26, 2015. It is being re-run as Steve is traveling.

I've almost never heard of a developer backing down from solving a problem quickly. In fact, I think most developers assume they can solve many problems quickly and whip up useful software. I know I've felt this way numerous times in the past. Need a little monitoring? I can knock that out this week.

However there are costs to maintaining software over time. While many of us can build scripts and small programs that solve problems, we also learn that those little pieces of software need some care and attention over time. That's well illustrated in the piece titled If You Build It, They Will Complain.

I had a similar path to that of the author. I built a utility, then another, then another for various departments and people inside of my company. I knocked out useful software that others used. And then I got caught up in enhancing, repairing, and otherwise attending to said software. It was an eye opening experience to realize that often software is never done, unlike the experience I'd had in school.

I saw a very experienced SQL Server professional note a few years ago that they would never write monitoring software again. It's not that this person couldn't, or that they wouldn't do a good job, it's that they didn't want to maintain the software, and there are plenty of good packages that do most of the job needed. This person could fill in missing functionality in small areas, while spending their time on more valuable tasks.

That's how I think most of us should look at software. We should look to reuse and take advantage of software that's written to accomplish tasks, evaluating costs against our time. It's far too easy to discount an employee's time, when we could easily outspend the cost of a piece of software already written by someone else if we tackle it on our own.

Steve Jones - SSC Editor

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

Redgate Data Masker
  Featured Contents

SQL Server 2016 - Always Encrypted

Anil Kumar from SQLServerCentral

Always Encrypted is a new security feature which was introduced in SQL Server 2016. Always Encrypted is a technology to ensure the data stored in a database remains encrypted at all times during SQL Server query processing. Always Encrypted allows clients to encrypt sensitive data, such as credit card numbers and national identification numbers, inside the […]

Why you Should Avoid Using the @@IDENTITY Function

Additional Articles from Redgate

Phil Factor demonstrates why SQL Prompt has a 'Best Practice' rule (BP010) that checks for use of the @@IDENTITY function, and suggests less error-prone ways to get the latest identity values used in a table.

Create, Alter, Drop and Execute SQL Server Stored Procedures

Additional Articles from

In this tip we look at some examples of how to get started with creating, modifying and deleting SQL Server stored procedures.

From the SQL Server Central Blogs - VSCode Tips–Remove the Highlighted Line

Steve Jones - SSC Editor from The Voice of the DBA

VSCode was making me crazy as I was writing a script. I like a light theme, and every time I went to type, I saw this: The highlight was...

From the SQL Server Central Blogs - SpeedPASS Printing

Andy Warren from SQLAndy

Based on the great post and script from Wayne Sheffield I decided to try again pre-printing the SpeedPASS for everyone this year. I dislike the line of shame and...


  Question of the Day

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


Restoring Expired Certificates

I have a certificate that is used for TDE in my SalesSQL instance. This certificate expired last month. I now need to restore a backup of this certificate on a different instance for a DR test. What happens when I run the CREATE CERTIFICATE FROM FILE command on the new instance using a backup of the expired certificate?

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)

Merging Multiple Dataframes

I want to merge multiple dataframes together in R. I have 4 of them and know about the merge() function. When I use this, how many dataframes can I merge at one time?

Answer: 2

Explanation: Merge only allows for two dataframes to be merged at one time. I would need to call this three times to merge all four dataframes into one. Ref: Merge() -

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 2017 - Administration
business intelligence development studio(Bids) - Hello, I have a SQL 2017 and I want to use business intelligence development studio(Bids), I dont see the App on the start menu. Integration service are exist. Tanks!
SQL Server Upgrade - I have old physical SQL Server which is less than 2 yrs old, so we are planning to upgrade to SQL 2017/2019. So thinking of using the same old physical SQL Server for the upgrade. Would need to load the new windows version and SQL Server. Do you see any reason that it should not […]
SQL Server 2017 - Development
SSAS - Aggregation issue: “N/A” members be excluded from Excel “Grand Total " - We’ve build a Finance OLAP Cube in SSAS which is mostly used/browsed by Accountants. Due to a “self-service” policy that is followed, users are in the meantime required to make use of Excel (with a data connection to the cube) as their reporting and/or analysis tool. One of the dimensions, the Accounts dimension, contains the […]
SSIS - Adding Columns to existing table and load data - I am working in SSIS (Sql server version 2012) , I have a requirement to add two new columns to a destination table which already has five years of data. How can i add these two new columns and bring data to the destination table which already has 5 years of data. Thanks
Alert me Export table data to .MSG file using Stored Procedures or any plugin ? - Is it possible with a stored procedure to write/export/output the data as .msg outlook file using existing table data?
SQL SEREVR QUERY - I HAVE A TABLE called TBLGENDER LIKE BELOW IN THIS TABLE 2 people getting 8000,2 people getting 5500,2 people getting 3500 AND 4 people getting 5000 ID NAME GENDER SALARY CITY 1 SHIVA MALE 8000 LONDON 2 MAMATHA FEMALE 6000 SYDNEY 3 NIHAL MALE 5000 DELHI 4 ROHAN MALE 3500 DELHI 5 PANDA FEMALE 3500 […]
SQL Server 2016 - Development and T-SQL
Using log4net in a dll which is called via CLR function - Hello I am refactoring older code which is part of an SQL Server CLR Function call. The code has a horrible local logger implemented, I would like to use a standard logger such as log4net. What are the pros and cons of such an approach? Is it feasible? Has anyone done something similar before? Best […]
Issue with max() and aggregate, missunderstanding - Hi all, this is my first post here and I've been looking and trying to understand this for hours the various ways people have tried to get around this issue. My trouble is as follows. I have a database with three tables linked together by 'DocumentNo'. Two main linked tables which output all rows with […]
Help with Query Results and Collation - I should know the answer to these questions, but I'm having trouble with a couple of my queries. First, my goal here is to compare data from a table in a source database with data from a table in another database to see whether there are any differences. Here's a simple example: DECLARE @TableA TABLE […]
Administration - SQL Server 2014
SQL 2014 (or any other versions) Standard - ~Embedded Licensing~ - Anyone have any insights on how this licensing works and what the "Use Rights" are? I can't seem to find much about it. Most I gathered (and I could be wrong) is it is dedicated solely to the application that uses it. No other databases can be on it for any other reasons and no […]
SQL 2012 - General
MEMORY CONSUMPTION SQL 2012 - hi all, as you can see in attachment sql take 122  giga memory. and in report consmtion i see only  94 taken  by sql . ( this report generated from sql) and idea where 30 giga  is hidden :)? and how  i can seem them ? thanks  alot sharon  
SSIS adding new columns to existing table - Hello All, I am working in SSIS (Sql server version 2012) , I have a requirement to add two new columns to a destination table which already has five years of data. How can i add these two new columns and bring data to the destination table which already has 5 years of data. Thanks
How can I convert %5B and %5D to [ and ] in a string - Hi, I have a string nvarchar(255) and I am try to convert the ASCII codes in it and also extract part of the string. Here is an example of a value: urn:ADL:CC_LB_SF_EN_D_C_%5BLB_LS_TCD%5D_%5BLB_LS_CotCF%5D_28_1 This is what I would like to convert it to: urn:ADL:CC_LB_SF_EN_D_C_[LB_LS_TCD]_[LB_LS_CotCF]_28_1 Then I would like to select what is between urn:ADL: and the […]
SSRS 2014
Simple Cascade Parameters not updating - I have a parameter called SearchCriteria with four Available Values R, W, M, or A for Range of Dates, Last Week, Last Month, or Last Year respectively.  I have another parameter to include a statistics Table at the End of the Report.  For all but the Range of dates I want the stats table to […] Website Issues
A while ago I stopped receiving my daily and weekly newsletters. - A while ago I stopped receiving my daily and weekly newsletters.  I am not sure why.  Today as a test I unchecked the selections, saved the unchecked values and rechecked the selections.  I've done that before and it didn't help.  Can you please let me know why I am no longer receiving these newsletters. It's […]


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 This newsletter was sent to you because you signed up at
©2019 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.


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