SQLServerCentral - www.sqlservercentral.com

A community of more than 1,600,000 database professionals and growing

Featured Contents

Featured Script

The Voice of the DBA

How Long is Too Long?

After SQL Bits this year, there was a discussion on Twitter about the length of the sessions and what attendees would like to see. The event ran 50 minute sessions, and that wasn't appreciated by some speakers. It's an odd length, and one that few events use. Even SQL Saturdays often do at least 60 minutes, though often I find larger conferences do 75 or 90 minute lengths. In response to some of the debates about short vs. long sessions, Brent Ozar Unlimited is running a poll as well. I'd encourage you to participate and help shape how conferences structure their schedules.

I've somewhat argued against the shorter session for a conference, or really, at SQL Bits, because the short length is disruptive for me. I've got sessions I've prepared and given elsewhere. Some I'd like to give at Bits and some I'd update and adapt for the event, but cutting down from a 75 minute talk to 45 or 50 minutes is quite a bit of work. I know because I had a session last year that was accepted at multiple events. I had to give this in 30 minute, 60 minute, and 75 minute lengths, which was a challenge. I ended up building the 75 minute version and cutting things out, but it felt like I lost some flow and continuity at the different events. I think this was because it is just hard to practice different lengths and deliver them well.

That's me, and I'm a speaker. If I want to present, then I need to adapt, so some of my argument is because I would like to avoid some work. I practice sessions many times and work hard to build a smooth flow that attendees follow. Changing lengths means more practice for me. I'll do it, but I'll also think about skipping events that use weird times. 60 minutes isn't too hard to get to from 75 minutes, but I still find myself rushing at the end. I know trying to fit down to 50 minutes would be hard. I definitely see lots of speakers that struggle to get their talk going, and often run out of time, which I think gets worse with shorter time frames.

For the attendee, I have a different view. I actually think that shorter is better. At our SQL in the City Streamed events, we've experimented with sessions at 25, 35, 45, and 60 minute lengths. I like the shorter ones, which are more focused, and I do think that we can focus down on a topic more tightly in a 30-45 minute session. Strangely enough, I find the 15-20 minute sessions the hardest to build, often because I feel I have to jump right into the topic and the demos have to be very tight and reliable.

SQL in the City Streamed, however, has no audience. No one to ask a question or slow the session down. Also no feedback to understand if I'm losing people because of a poor explanation. In a live event, I find that my pacing will vary slightly as I take questions or elaborate on a point. The shorter the session, the less time for this, but perhaps that's fine. Questions can be handled later, or maybe even submitted to speakers who can publish answers on their blog or an event site. 

We deal with a lot of complex topics in technology, and I'd agree that many aren't handled very well in short sessions, but I also think that complex topics aren't handled well in 90 minutes either. Going to shorter session lengths means more slots during the day, maybe even more networking, and perhaps best of all, more breaks to stand up and move. If I were designing the ideal length, I do like 50 minutes, with a 10 minute break every hour. If a speaker needs more time, then build a 100 minute session and present in two parts, still with a break.

Selfishly, I like longer sessions as a speaker where I can dig into topics and spend more time explaining concepts, demoing solutions, and developing a pace of delivery. As an attendee, I prefer shorter sessions, but I do expect more effort from speakers to be on point, have demos that flow smoothly and quickly, and don't waste time on items that the audience should be expected to know. However, I'm also a member of the community and I'll work with whatever decisions conference organizers make. I'd just prefer they stick close to each other with similar session lengths.

Take Brent's survey, but let me know in the discussion here what you prefer and why? Should you get shorter, more tightly focused sessions? Think about something you've seen recently and how it would be if you cut the length down or made it longer. Would the talk have been better or worse?

Steve Jones from SQLServerCentral.com

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


The Voice of the DBA Podcast

Listen to the MP3 Audio ( 6.7MB) podcast or subscribe to the feed at iTunes and Libsyn. feed

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music.

ADVERTISEMENT
SQL Monitor

How SQL Server monitoring benefits your whole organization

SQL Server monitoring doesn’t just benefit your DBAs. In this new guide from Redgate, we take you through the different ways a robust monitoring solution has a positive impact across your organization, from your development teams to IT management, and from finance to your C-suite. Download your free copy now

SQL Provision

SQL Provision: Create, protect, & manage SQL Server database copies for compliant DevOps

With SQL Provisions virtual cloning technology, databases can be created in seconds using just 1MB of storage, and sensitive data can be anonymized or replaced with realistic data to ensure it is protected as it moves between environments. Download your free trial

Featured Contents

 

The OUTPUT Clause for INSERT and DELETE Statements

Amarendra Reddy Thummeti from SQLServerCentral.com

In this article, I will provide a set of examples to show case the use of OUTPUT clause for INSERT and DELETE statements. More »


 

What should you do about memory dumps?

Additional Articles from Brent Ozar Unlimited Blog

A SQL Server monitoring tool is warning you that you’re getting memory dumps, and you’re wondering what that means. More »


 

Create Power BI Connection to Azure SQL Database

Additional Articles from MSSQLTips.com

Learn how to use Power BI to retrieve data from an Azure SQL Database. More »


 

From the SQLServerCentral Blogs - Cruel Joke: Prevent SQL Server From Starting, and With (Almost) No Indication Why

Solomon Rutzky from SQLServerCentral Blogs

(last updated: 2019-03-07 @ 15:40 EST / 2019-03-07 @ 20:40 UTC ) I ran across something the other day that I thought would be... More »


 

From the SQLServerCentral Blogs - SQL Homework – March 2019 – Reconfigure tempdb

Kenneth Fisher from SQLServerCentral Blogs

You’ve heard of tempdb right? It’s one of the system databases. All of the system databases are important but poor... More »

Question of the Day

Today's Question (by Steve Jones):

I discovered that someone created 32 files for tempdb on an instance. I'd like to remove some of these files. How can I remove a file named tempdb32?

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


We keep track of your score to give you bragging rights against your peers.
This question is worth 1 point in this category: tempdb.

We'd love to give you credit for your own question and answer.
To submit a QOTD, simply log in to the Contribution Center.

Yesterday's Question of the Day

Yesterday's Question (by Evgeny Garaev):

I have two simple tables created and populated like this:

create table t1(c1 int);

 create table t1(c1 int); insert into t1(c1) values(1), (2), (3), (4); create table t2(c2 int); insert into t2(c2) values(1), (2); 

What will be the result if I execute a query like this:

 select c1 from t1 where t1.c1 in (select c1 from t2); 

Answer: All 4 records from the table t1

Explanation:

The inner query (select c1 from t2) will be ignored because it refers to the column c1 from the outer table t1. And all 4 records from the table t1 will be returned.


» Discuss this question and answer on the forums

Featured Script

DigitsOnlyEE and AlphaNumericOnly

Alan Burstein from SQLServerCentral.com

Updated 20190307 with correctly applied ORDER  BY statements for each function

Intro

In June, 2014 someone asked if anyone had a StripNonNumeric ITVF function. This request would lead to a few RBAR-free, set-based functions designed to clean strings. For the next few months members of the SQL Server community put their heads together and, after a bunch of testing came up with DigitsOnlyEE, the fastest T-SQL function for removing non-numeric characters from a string available today. Designing DigitsOnlyEE as an inline table valued function makes it possible to speed it up even more by forcing a parallel execution plan with Adam Machanic's make_parallel. A couple tweaks later we also had an AlphaNumericOnly ITVF. In April, 2017 I added AlphaOnly which removes all non-alphabetical characters. 

What about PatExclude8K or PatReplace8K?

PatExclude8K and PatReplace8K came out of the aforementioned effort and could be used for removing non-numeric or non-alphanumeric characters as shown below.

 --===== PatExclude8K: SELECT NewString FROM dbo.PatExclude8K('???ABC-123!!!','[^0-9]'); -- remove non-numeric characters SELECT NewString FROM dbo.PatExclude8K('???ABC-123!!!','[^0-9A-Za-z]'); -- remove non-alphanumeric  --===== PatReplace8K: SELECT NewString FROM dbo.PatReplace8K('???ABC-123!!!','[^0-9]',''); -- remove non-numeric characters SELECT NewString FROM dbo.PatReplace8K('???ABC-123!!!','[^0-9A-Za-z]',''); -- remove non-alphanumeric 

DigitsOnlyEE and AlphaNumericOnly are much faster and better suited for this task, let me explain why: PatExclude8K and PatReplace8K both use a tally table to split the string into unigrams, then use the FOR XML PATH('') trick to put the string back together excluding characters that match the exclusion pattern (@pattern). Here's the code from PatExlclude8K:

 ... SELECT NewString = ( SELECT SUBSTRING(@String,N,1) FROM iTally WHERE 0 = PATINDEX(@Pattern,SUBSTRING(@String COLLATE Latin1_General_BIN,N,1)) FOR XML PATH(''),TYPE ).value('.[1]','varchar(8000)');
Note the TYPE and .value('.[1]', 'varchar(8000)') code. Removing this code would make the function notably faster. Unfortunately, PatExclude8K and PatReplace8K require this code in case the preserved text includes special XML characters. Wayne Sheffield discusses this topic in his article: Creating a comma-separated list (SQL Spackle):
The TYPE clause specifies to return the data as an XML type. The .value('.','varchar(max)') takes each value, and converts it into a varchar(max) data type. The combination of the TYPE and .value means that values are created at XML tags (such as the ampersand (&), and the greater than (>) and less than (<) signs), will not be tokenized into their XML representations and will remain as is.

We don't need to include the TYPE and .value('.[1]', 'varchar(8000)') code for DigitsOnlyEE or AlphaNumericOnly because the preserved characters are numbers and letters only. There are other performance enhancements which are documented in the comment section of each function. 

Happy string manipulating!

DigitsOnlyEE

 IF OBJECT_ID('dbo.digitsOnlyEE', 'IF') IS NOT NULL DROP FUNCTION dbo.digitsOnlyEE; GO CREATE FUNCTION dbo.digitsOnlyEE (  @pString VARCHAR(8000) ) /**************************************************************************************** [Purpose]:  Given a VARCHAR(8000) or less string, return only the numeric digits from the string. [Author]:  Alan Burstein, EE, Jeff Moden [Compatibility]:  SQL Server 2008+, Azure SQL Database, Azure SQL Data Warehouse & Parallel Data Warehouse [Parameters]:  @pString = VARCHAR(8000); Input string to be cleaned [Returns]:  digitsOnly = NVARCHAR(MAX)   [Syntax]: --===== Autonomous  SELECT ca.digitsOnly  FROM dbo.digitsOnly(@pString) AS ca; --===== CROSS APPLY example  SELECT ca.digitsOnly  FROM dbo.SomeTable  CROSS APPLY dbo.digitsOnly(SomeVarcharCol) AS ca; [Dependencies]: N/A [Developer Notes]:  1. This is an iTVF (Inline Table Valued Function) that performs the same task as a  scalar user defined function (UDF) accept that it requires the APPLY table operator.  Note the usage examples below and See this article for more details:  http://www.sqlservercentral.com/articles/T-SQL/91724/  The function will be slightly more complicated to use than a scalar UDF but will yeild  much better performance. For example - unlike a scalar UDF, this function does not  restrict the query optimizer's ability generate a parallel query plan. Initial testing  showed that the function generally gets a parallel execution plan  2. Runs 2-4 times faster with a parallel query plan. For optimal performance use Adam  Machanic's make_parallel() function (provided that you are on a machine with two or  more logical CPUs). make_parallel can be found here:  sqlblog.com/blogs/adam_machanic/archive/2013/07/11/next-level-parallel-plan-porcing.aspx  3. This is an iTVF (Inline Table Valued Function) that will be used as an iSF  (Inline Scalar Function) in that it returns a single value in the returned  table and should normally be used in the FROM clause as with any other iTVF.  4. CHECKSUM returns an INT and will return the exact number given if given an  INT to begin with. It's also faster than a CAST or CONVERT and is used as a  performance enhancer by changing the bigint of ROW_NUMBER() to a more  appropriately sized INT.  5. Another performance enhancement is using a WHERE clause calculation to prevent  the relatively expensive XML PATH concatentation of empty strings normally  determined by a CASE statement in the XML "loop".  6. Another performance enhancement is not making this function a generic function  that could handle a pattern. That allows us to use all integer math to do the  comparison using the high speed ASCII function convert characters to their numeric  equivalent. ASCII characters 48 through 57 are the digit characters of 0 through 9.  7. Keep in mind that digitsOnlyEE returns an nvarchar(max) value. If you are returning  small numbers consider casting or converting yout values to a numeric data type if  you are inserting the return value into a new table or using it for joins or comparison  purposes.  8. digitsOnlyEE is deterministic; for more about deterministic and nondeterministic  functions see https://msdn.microsoft.com/en-us/library/ms178091.aspx Kudos:  1. Hats off to Eirikur Eiriksson for the ASCII conversion idea and for the reminders  that dedicated functions will always be faster than generic functions and that  integer math beats the tar out of character comparisons that use LIKE or PATINDEX.  2. Hats off to all of the good people that submitted and tested their code on the  following thread. It's this type of participation and interest that makes code  better. You've just gotta love this commmunity.  http://www.sqlservercentral.com/Forums/Topic1585850-391-2.aspx#bm1629360 [Examples]: --===== 1. Basic use against a literal  SELECT f.digitsOnly  FROM dbo.digitsOnlyEE('xxx123abc999!!!') AS f; --===== 2. Against a table  DECLARE @sampleTxt TABLE (txtID int identity, txt varchar(100));  INSERT @sampleTxt(txt) VALUES ('abc123'),('!!!555!!!'),('000.999'),(NULL);  SELECT st.txtID, OldTxt = st.txt, f.digitsOnly  FROM @sampleTxt AS st  CROSS APPLY dbo.digitsOnlyEE(st.txt) AS f; --------------------------------------------------------------------------------------- [Revision History]:  Rev 00 - 20141029 - Initial Creation - Jeff Moden  Rev 01 - 20141210 - TOP clause changed to handle NULL inputs - Eirikur Eiriksson  Rev 02 - 20160512 - Substantial updates to the comments & examples - Alan Burstein  Rev 03 - 20180624 - ADDED ORDER BY N; now performing CHECKSUM conversion to INT inside  the final cte (digitsonly) so that ORDER BY N does not get sorted. ****************************************************************************************/ RETURNS TABLE WITH SCHEMABINDING AS RETURN WITH E1(N) AS (  SELECT N  FROM (VALUES(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL)) AS X(N) ), iTally(N) AS (  SELECT TOP (LEN(ISNULL(@pString,CHAR(32))))  (ROW_NUMBER() OVER (ORDER BY (SELECT NULL)))  FROM E1 AS a CROSS JOIN E1 AS b CROSS JOIN E1 AS c CROSS JOIN E1 AS d ) SELECT digitsOnly = (  SELECT SUBSTRING(@pString,CHECKSUM(N),1)  FROM iTally AS i  WHERE ((ASCII(SUBSTRING(@pString,CHECKSUM(N),1)) - 48) & 0x7FFF) < 10  ORDER BY i.N  FOR XML PATH('') ); GO

AlphaNumericOnly

 IF OBJECT_ID('dbo.alphaNumericOnly8K', 'IF') IS NOT NULL DROP FUNCTION dbo.alphaNumericOnly8K; GO CREATE FUNCTION dbo.alphaNumericOnly8K ( @pString varchar(8000) ) RETURNS TABLE WITH SCHEMABINDING AS RETURN /**************************************************************************************** [Purpose]: Given a varchar(8000) string or smaller, this function strips all but the alphanumeric characters that exist in @pString. [Author]: Alan Burstein, EE, Jeff Moden [Compatibility]: SQL Server 2008+, Azure SQL Database, Azure SQL Data Warehouse [Parameters]: @pString = VARCHAR(8000); Input string to be cleaned [Returns]: AlphaNumericOnly - VARCHAR(8000) [Syntax]: --===== Autonomous SELECT ca.AlphaNumericOnly FROM dbo.AlphaNumericOnly(@pString) AS ca; --===== CROSS APPLY example SELECT ca.AlphaNumericOnly FROM dbo.SomeTable AS st CROSS APPLY dbo.AlphaNumericOnly(st.SomeVarcharCol) AS ca; [Dependencies]: N/A [Developer Notes]: 1. Based on Jeff Moden/Eirikur Eiriksson's DigitsOnlyEE function. For more details see: http://www.sqlservercentral.com/Forums/Topic1585850-391-2.aspx#bm1629360 2. This is an iTVF (Inline Table Valued Function) that performs the same task as a scalar user defined function (UDF) accept that it requires the APPLY table operator. Note the usage examples below and see this article for more details: http://www.sqlservercentral.com/articles/T-SQL/91724/ The function will be slightly more complicated to use than a scalar UDF but will yeild much better performance. For example - unlike a scalar UDF, this function does not restrict the query optimizer's ability generate a parallel query plan. Initial testing showed that the function generally gets a parallel execution plan. 3. AlphaNumericOnly runs 2-4 times faster when using make_parallel() (provided that you have two or more logical CPU's and MAXDOP is not set to 1 on your SQL Instance). 4. This is an iTVF (Inline Table Valued Function) that will be used as an iSF (Inline Scalar Function) in that it returns a single value in the returned table and should normally be used in the FROM clause as with any other iTVF. 5. CHECKSUM returns an INT and will return the exact number given if given an INT to begin with. It's also faster than a CAST or CONVERT and is used as a performance enhancer by changing the bigint of ROW_NUMBER() to a more appropriately sized INT. 6. Another performance enhancement is using a WHERE clause calculation to prevent the relatively expensive XML PATH concatentation of empty strings normally determined by a CASE statement in the XML "loop". 7. Note that AlphaNumericOnly returns an nvarchar(max) value. If you are returning small numbers consider casting or converting yout values to a numeric data type if you are inserting the return value into a new table or using it for joins or comparison purposes.  8. AlphaNumericOnly is deterministic; for more about deterministic and nondeterministi functions see https://msdn.microsoft.com/en-us/library/ms178091.aspx [Examples]: --===== 1. Basic use against a literal SELECT ao.AlphaNumericOnly FROM dbo.alphaNumericOnly8K('xxx123abc999!!!') AS ao; --===== 2. Against a table DECLARE @sampleTxt TABLE (txtID int identity, txt varchar(100)); INSERT @sampleTxt(txt) VALUES ('!!!A555A!!!'),(NULL),('AAA.999'); SELECT st.txtID, OldTxt = st.txt, f.AlphaNumericOnly FROM @sampleTxt AS st CROSS APPLY dbo.alphaNumericOnly8K(st.txt) AS f; --------------------------------------------------------------------------------------- Rev 00 - 20150526 - Inital Creation - Alan Burstein Rev 01 - 20150526 - 3rd line in WHERE clause to correct something that was missed - Eirikur Eiriksson Rev 02 - 20180624 - ADDED ORDER BY N; now performing CHECKSUM conversion to INT inside the final cte (digitsonly) so that ORDER BY N does not get sorted. ****************************************************************************************/ WITH E1(N) AS ( SELECT N FROM (VALUES(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL)) AS x(N) ), iTally(N) AS ( SELECT TOP (LEN(ISNULL(@pString,CHAR(32)))) ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) FROM E1 AS a CROSS JOIN E1 AS b CROSS JOIN E1 AS c CROSS JOIN E1 AS d ) SELECT AlphaNumericOnly = ( SELECT SUBSTRING(@pString,CHECKSUM(N),1) FROM iTally AS i WHERE ((ASCII(SUBSTRING(@pString,CHECKSUM(N),1)) - 48) & 0x7FFF) < 10 OR ((ASCII(SUBSTRING(@pString,CHECKSUM(N),1)) - 65) & 0x7FFF) < 26 OR ((ASCII(SUBSTRING(@pString,CHECKSUM(N),1)) - 97) & 0x7FFF) < 26 ORDER BY i.N FOR XML PATH('')); GO

AlphaOnly

 IF OBJECT_ID('samd.alphaOnly8K') IS NOT NULL DROP FUNCTION samd.alphaOnly8K; GO CREATE FUNCTION samd.alphaOnly8K (  @pString VARCHAR(8000) ) RETURNS TABLE WITH SCHEMABINDING AS RETURN /***************************************************************************************** [Purpose]:  Given a VARCHAR(8000) or less string, returns only the alphabetical digits from the  input string (@pString). [Author]:  Alan Burstein, EE, Jeff Moden [Compatibility]:  SQL Server 2008+, Azure SQL Database, Azure SQL Data Warehouse [Parameters]:  @pString = varchar(8000); Input string to be cleaned [Returns]:  AlphaOnly = varchar(8000) [Syntax]: --===== Autonomous  SELECT ca.AlphaOnly  FROM dbo.AlphaOnly(@pString) AS ca;  --===== CROSS APPLY example  SELECT ca.AlphaOnly  FROM dbo.SomeTable st  CROSS APPLY dbo.AlphaOnly(st.SomeVarcharCol) AS ca; [Dependencies]:  N/A [Developer Notes]:  1. Based on Jeff Moden/Eirikur Eiriksson's DigitsOnlyEE function. For more details see:  https://goo.gl/Qo8rpy  2. This is an iTVF (Inline Table Valued Function) that performs the same task as a  scalar user defined function (UDF) accept that it requires the APPLY table operator.  Note the usage examples below and see this article for more details:  https://goo.gl/3utbgx  The function will be slightly more complicated to use than a scalar UDF but will yeild  much better performance. For example - unlike a scalar UDF, this function does not  restrict the query optimizer's ability generate a parallel query plan. Initial testing  showed that the function generally gets a  3. AlphaOnly runs 2-4 times faster when using make_parallel() (provided that you  have two or more logical CPU's and MAXDOP is not set to 1 on your SQL Instance).  4. CHECKSUM returns an INT and will return the exact number given if given an INT to  begin with. It's also faster than a CAST or CONVERT and is used as a performance  enhancer by changing the bigint of ROW_NUMBER() to a more appropriately sized INT.  5. Another performance enhancement is using a WHERE clause calculation to prevent  the relatively expensive XML PATH concatentation of empty strings normally  determined by a CASE statement in the XML "loop".  6. Note that AlphaOnly returns an nvarchar(max) value. If you are returning small  numbers consider casting or converting yout values to a numeric data type if you are  inserting the return value into a new table or using it for joins or comparison  purposes.  8. AlphaOnly is deterministic; for more about deterministic and nondeterministic  functions see https://msdn.microsoft.com/en-us/library/ms178091.aspx [Examples]: --===== 1. Basic use against a literal  SELECT ao.AlphaOnly  FROM samd.alphaOnly8K('xxx123abc999!!!') AS ao; --===== 2. Against a table  DECLARE @sampleTxt TABLE (txtID int identity, txt varchar(100));  INSERT @sampleTxt(txt) VALUES ('!!!A555A!!!'),(NULL),('AAA.999');  SELECT st.txtID, OldTxt = st.txt, AlphaOnly  FROM @sampleTxt AS st  CROSS APPLY samd.alphaOnly8K(st.txt) AS f; --------------------------------------------------------------------------------------- [Revision History]:  Rev 00 - 20170411 - Inital Creation - Alan Burstein  Rev 01 - 20180624 - ADDED ORDER BY N; now performing CHECKSUM conversion to INT inside  the final cte (digitsonly) so that ORDER BY N does not get sorted  Rev 03 - 20180624 - ADDED ORDER BY N; now performing CHECKSUM conversion to INT inside  the final cte (digitsonly) so that ORDER BY N does not get sorted. ****************************************************************************************/ WITH E1 AS (SELECT N FROM (VALUES ($),($),($),($),($),($),($),($),($),($)) AS x(N)), iTally(N) AS (  SELECT TOP (LEN(ISNULL(@pString,CHAR(32)))) ROW_NUMBER() OVER (ORDER BY (SELECT NULL))  FROM E1 AS a CROSS JOIN E1 AS b CROSS JOIN E1 AS c CROSS JOIN E1 AS d ) SELECT AlphaOnly = (  SELECT SUBSTRING(@pString,CHECKSUM(i.N),1)  FROM iTally AS i  WHERE ((ASCII(SUBSTRING(@pString,CHECKSUM(i.N),1)) - 65) & 0x7FFF) < 26  OR ((ASCII(SUBSTRING(@pString,CHECKSUM(i.N),1)) - 97) & 0x7FFF) < 26  ORDER BY i.N  FOR XML PATH('') ); GO

More »

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 : SQL Server 2017 - Administration

Full-Text Search Not Updating - Hi Having issues with FTS. Installed 2017 on Server, RTM- CU9, Os is Windows Server 2016. The issue is that FTS is not updating. Have...


SQL Server 2017 : SQL Server 2017 - Development

Merge Statement Issue - I have Table with date , itemid , amount 03/01/2019  1   45 03/01/2019   2   46 i got data from other table and my result have...


SQL Server 2016 : SQL Server 2016 - Administration

DBBC Check on AG - Hello, I would like to have question, how dbbc check works on AG ? should be on all replicas ? or only on...

MS Resource Governor values x and y - https://docs.microsoft.com/en-us/sql/relational-databases/resource-governor/resource-governor-resource-pool?view=sql-server-2017 On this thread there is a mention of Min(X,Y) means the smaller value of X and Y. What is X and...

adding securables to your own account. - Hope this is the right board for this, if not please let me know.  I was asked to help with a...

DBA Job interview question thoughts - Just out of curiosity how big a whiff would you consider not knowing the difference between a clustered and non-clustered...


SQL Server 2016 : SQL Server 2016 - Development and T-SQL

Difference in checksum calculations. - All, Thank you for looking into my question. I am facing an issue with difference in checksum calculations for the same...


SQL Server 2014 : Administration - SQL Server 2014

Loading CSV file into Multiple tables - Hi, I have to load the data from .csv file into few sql server tables which have referential integrity also. What's the...


SQL Server 2014 : Development - SQL Server 2014

insert to .XLSX fails if len(column) > 255 - Error: ERROR MESSAGE:   String orbinary data would be trun


SQL Server 2012 : SQL 2012 - General

Linked Server... Kerberos on SQL Server with local system service account - I'm having trouble with kerberos trying to run linked servers, getting spn issue.  I know that SPN needs to be...

Top most manager name with out CTE - Hi, I need to get the Top most manager name with employee name. for eg:- epmid | empname | mgrid 1 emp1 Null 2 emp2 1 3...


SQL Server 2012 : SQL Server 2012 - T-SQL

trimming SSNs - I have thousands of social security numbers I need to trim to leave only the last 4 digits... it is...

Parse string based on a list of values - Rather that use a bunch of replace functions, is there a better way to parse these values, CH,HC,MA,NH,OA,OTH,PSY,SNF, out of...


SQL Server 2008 : SQL Server 2008 - General

Not enough storage is available to process this command - Dear All, I have been receiving the following error message "Not enough storage is available to process this command", although the...

Filtering by date crashes report\query - Hi, I have the following sql query SELECT DISTINCT                          scheme.ABC.users_text_field, scheme.efg.PAL_efg, scheme.efg.PAL_oqty, scheme.efg.PAL_product, scheme.efg.PAL_date, &nb


SQL Server 2008 : T-SQL (SS2K8)

Parse XML Data - Hi I'm trying to parse out the "Minutes in this XML Data <Data> <Interventions_x0020_Provided>   <Interventions_x0020_Provided_x0020_SubTable>   <Intervention>On-site (Observations, Consultation)</Intervention>   <Provided>true</Provided>   <Minutes>35</Minutes>   &lt


SQL Server 2008 : SQL Server Newbies

Sql Query to find invalid SSN Numbers - I would like to write a query that returns any Employees (id, ssn, and name) with an invalid SSN along...


Reporting Services : SSRS 2012

SSRS Report Data Source Error with TLS 1.2 - As part of the PCI initiative to disable weak ciphers, we began that process at my company. After following all...


Data Warehousing : Integration Services

Passing datatime , int variables into a table through execute sql task in SSIS - I have a Audit table something like below but it keeps throwing error "resultset property not set correctly" CREATE TABLE .(  ...


SQL Server 2005 : SQL Server 2005 General Discussion

xp_dirtree - permission ok but no results returned - Hi Gurus, I am using Windows Authentication and Trusted Connection when I connect to SQL Server. I have no problem accessing...

This email has been sent to newsletter@newslettercollector.com. 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.
Feel free to forward this to any colleagues that you think might be interested.
If you have received this email from a colleague, you can register to receive it here.
This transmission is ©2018 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
Contact: webmaster@sqlservercentral.com