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

Daily Coping Tip

Put your worries into perspective and try to let them go

I also have a thread at SQLServerCentral dealing with coping mechanisms and resources. Feel free to participate.

For many of you out there working in a new way, I'm including a thought of the day on how to cope in this challenging time from The Action for Happiness Coping Calendar. My items will be on my blog, feel free to share yours.

Hiding Data Isn't Always Easy

There is an article about redacting data in a report done poorly. A consulting firm hired by Frontier Communications wrote a report and redacted lots of information. However, they apparently didn't do a good job as all the information they blacked out could be read if the data were copy and pasted elsewhere. Something that's much easier in digital reports than analog ones.

This was a PDF document, and I checked it. On page 25, there is this sentence: " Annual capital expenditures for Frontier’s West Virginia local exchange carrier companies have averaged over XXXXXXXX for the past nine years." The XXX is blacked out, but pasting it into a document shows this is a $70mm amount. It pays to know your tools.

This certainly isn't a good technique for hiding information, but it's not far off from what some people do when trying to mask or obfuscate sensitive production data in development environments. There are lots of cases where people use scripts that change data in one table, but not related data. Or that the changes are incomplete and don't do a good job of ensuring there isn't sensitive data leakage.

To be fair, this is a hard problem, and there are no perfect solutions. Anyone masking data likely needs to take a few passes at the problem, making adjustments over time to try and ensure that the data is protected from unauthorized disclosure. There also isn't a perfect solution, as many researchers have found ways to reconstruct the original data after it's been anonymized.

This is an area that I think is still somewhat immature, with relatively few best practices available for anyone to look at. While I have seen some guidance, I don't see much on how one could verify they had done a good job. I hope we find ways to do better in the future, with more knowledge that helps data professionals ensure they are doing a good job.

Steve Jones - SSC Editor

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

Redgate SQL Provision
  Featured Contents

Helpful Unix Commands/Debugging made easy

Imran Quadri Syed from SQLServerCentral

The purpose of this document is to walkthrough helpful Unix commands that would help use Unix/Linux operating system, debug & resolve any issues in a more efficient and timely manner.

Solve SQL Server Agent Job Dependencies with Data Driven Solution

Additional Articles from

In this tip I will demonstrate a simple way of launching a SQL Agent job when the job it depends on completes successfully.

Take the 2020 State of Database Monitoring Survey

Additional Articles from Redgate

The State of Database Monitoring survey is open. How are you currently monitoring your database estate? Are you working cross-platform? Tell us your opinions in our annual survey on the State of Database Monitoring for your chance to win a $500 Amazon voucher.
Take the survey.

From the SQL Server Central Blogs - Pluralsight Free April

Gail Shaw from SQL In The Wild

It’s a few days into April, but not too late I hope to mention that Pluralsight is offering their entire library, free to new accounts, for the month of...

From the SQL Server Central Blogs - Deploy BACPAC to Azure Managed Instance failing from SSMS?

Daniel Janik from Confessions of a Microsoft Addict

Recently I ran into an error when trying to copy a small database bacpac into an Azure Managed Instance. It’s said that SSMS is able to do this task....


  Question of the Day

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


Long Wait(for)s

I had this in some of my code:
WAITFOR DELAY '00:00:30'
-- more code here
The client decided this isn't enough delay, and they want to double this. I write this code:
WAITFOR DELAY '00:00:60'
-- more code here
What happens when I execute this?

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)

Reading a Datafile

I have a dataset that is stored in the R data file format as counties.rds. I want to read this into a variable in R. What code should I use?

Answer: counties <- readRDS("counties.rds")

Explanation: Data stored in an R format is usually kept with a .RDS extension. There is a readRDS function that can load these. Ref: readRDS -

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
Best practices when upgrading to SQL Server 2017. 1 or 2 databases? Replication? - We are FINALLY migrating off our SQL 2000 box to SQL 2017. Our current environment is a single SQL server with a database dedicated for our internal applications and then a separate database for our eCommerce site - with SQL replication running between the databases (both merge and distribution). Our SQL server is NOT in […]
SQL Server 2017 - Development
Top 10, count Distinct of multiple columns in select statement - Hi All select TOP 10 SiteId, SiteName, count (distinct (JobID,Grade)) from SiteInfo I need to count unique value of jobID, Grade and get the count from each site, then highlight only the TOP 10 site. JobID 112 can belongs to Grade A, B also can be repeated many times so i need to make a […]
SQL Server 2016 - Administration
ALWAYS On Setup problem - While configuring N1 and N2  Nodes connected to DC  Domain Controller working fine. Establishing connection through Registering  Server  from SSMS  on Server (N2) is able to accessing  N1. When trying to establish on N1 for N2 gives an error. TITLE: Edit Server Registration Properties ------------------------------ Testing the registered server failed. Verify the server name, login […]
No permission to Cert, asymmetric key, or private key file - Hello. I am trying to restore a Db in SQL server 16. It is a developer version installed on windows 10 laptop. We have a backup file from a SaaS instance. We have moved to a new instance of the SaaS and this is our archive from the first instance. This is strictly for archiving […]
SSMS 2012 connect to SQL 2016 - My PC is running Windows 7 and SSMS 2012. How to connect PC to back-end SQL 2016 ?
SQL Server 2016 - Development and T-SQL
Case when with a Pivot - Hello, I'm trying to write a AR aging select query that  uses a case statement to indicate if the invoice due date is 30, 60, 90 over due etc. I need to then use the pivot function to get columns as  30,60, 90  , the problem I'm facing is the pivot doesn't seem to recognize […]
Select return no records - Hello, I feel stupid asking this...I should be able to work itout, but here I am. column value exsists in the table but when I selct value in a where , it retuns no records. the dattype is nvarchar and Ive tried to do a Cast and convert to no avail.  am I missing somthing […]
Administration - SQL Server 2014
Limiting Specific User Connections - Our environment has a set of users that use a third party app to connect to SQL Server. The problem is that these users like to open up multiple connections and run concurrent queries against the data which sometimes can hinder performance. I would like to limit the amount of connections this group can make […]
Stored Procedure - Usage - Hi, I am running query using sys.dm_exec_procedure_stats  to get the stored procedure usage report and little confused that it shows latest time like today but Execution count is NULL so what i should understand? Is it Not using Stored Procedure at all since Last Sql server Restarted? How I should interpreting Last_Execution_Time and execution_count columns […]
SQL Server 2019 - Development
Query time after specified date - I need help with a query. If I have a list of people each with a service date and I want to sum their spend one year and two years after their service date what is the best way to approach it? So I have a field that identifies the member, one that identifies the […]
Create delete update tables in one database to another database. - Hi All, This is sampath i am new to sqlservercentral community,i am not good programmer in sql related queries please helpme to acheive. Example:- I have two databases  database1 and database2 database1 has 20 tables and database2 has same 20 tables if anything updated/added/deleted any records in database1 tables automatically it should update database2 tables. […]
Slow Query when add 1 additional field - dear all, i have simple query that related several tables which 1 table have millions of rows. i have created index on each table that i will relate to master table. and it went pretty well, from 1 minute query that produce 400 thousands row, after add index it will only takes 30 seconds. Problem […]
Integration Services
Issue with SSIS variable expression using If THEN - i have a vairable in SSIS package, i want to implement if then condition in that variable expression based on file name i will get full file name form the package - [User::FileName] has values LK0011_20200218094659_FulArc_CODE01_PRODATA LK0011_20200218094659_FulArc_CODE02_PRODATA LK0011_20200218094659_FulArc_CODE03_PRODATA I will get these file names form for each loop container. we will have 3 different files. […]
COVID-19 Pandemic
Daily Coping Top 9 Apr 2020 - Today was a tip to : make some progress on a project that matters to me. I have plenty of tech projects, but was having a bad day, so I tackled something else:
Daily Coping Tip 10 Apr 2020 - Today's tip is:  Do something kind for yourself. My thoughts: I'm going to do some baking. A few places I've gotten gluten free recipes from:  


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.


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