Scripts

Technical Article

Parse a delimited string, return n-th value

This UDF will parse a string delimited by the character you specify and return the value in the n-th position you requested.Example:select dbo.fn_parse('this string', ' ', 1) --> 'this'select dbo.fn_parse('this string', ' ', 2) --> 'string'select dbo.fn_parse('this string', ' ', 3) --> NULLselect dbo.fn_parse('this  string', ' ', 2) --> ''

(1)

You rated this post out of 5. Change rating

2002-05-10

510 reads

Technical Article

Retrieve default value for parameter in procedure

This procedure will return DEFAULT value for the parameter in the stored procedure. Usage: Use pubs go declare @Value varchar(30) exec _GetParamDefault 'random_password','@password_type',@value OUTPUT SELECT @VALUE Also accepts different versions, by default, if not specified, first version info retrieved. exec _GetParamDefault 'random_password;2','@password_type',@value

You rated this post out of 5. Change rating

2002-05-10

351 reads

Technical Article

Check in New DDL to SourceSafe

Rather than invent (or learn) a whole new set of tools to preserve and version all DDL underneath our databases, we decided to use SourceSafe (something we're already using for all other source code). -- We've developed this VBscript to run nightly; it recreates object-level DDL in a given database and compares each object's script […]

You rated this post out of 5. Change rating

2002-05-09

167 reads

Technical Article

Multiple Replace

Like the replace function, but can replace more than 1 value at a time.e.g. select dbo.multiple_replace('hello', 'e', '1', default) gives 'h1llo'.  Equivalent to: select replace('hello', 'e', '1')e.g. select dbo.multiple_replace('hello world', 'e;w;ld', '1;2;END', default) gives 'h1llo 2orEND'e.g. select dbo.multiple_replace('hello world', 'e$w$ld', '1$2$END', '$') gives 'h1llo 2orEND'

(1)

You rated this post out of 5. Change rating

2002-05-09

472 reads

Technical Article

Scalar Function to Determine Age at a Given Date

This function was written to supplant cumbersome age-at calculations.  To execute, simply set a local INT variable equal to the output of the function.  For example, the following, given my birthdate, computes my own age:    DECLARE @age_at INT    SET @age_at = dbo.f_age_at ('2/16/1954', GETDATE ())

You rated this post out of 5. Change rating

2002-05-09

1,074 reads

Blogs

When Your Microsoft Fabric Capacity Runs Out: Optimize, Scale Up, Scale Out, or Isolate?

By

Microsoft Fabric makes it wonderfully easy to put many analytics workloads on one platform....

Accessing the Data API Builder MCP Server from VS Code

By

I recently started playing with the MCP Server for SQL Server, which is a...

From DBA or Data Engineer to AI Engineer: A Realistic Path

By

If you spend your days tuning queries, managing pipelines, or keeping a production database...

Read the latest Blogs

Forums

Two queries work until compared with EXCEPT statement

By Leo.Miller

I've got multiple databases on 2 SQL 2019 CU32 servers , all using the...

STRING_AGG DISTINCT

By Phil Parkin

Has anyone written a wrapper function (or similar) around STRING_AGG() to allow the retrieval...

In-place OS upgrade or migration to new OS?

By jasona.work

Putting this here as we're currently on SQL Server 2019 installed on Windows Server...

Visit the forum

Question of the Day

Rebuilding All Indexes

I have added a few indexes to one of my tables in SQL Server 2025:

ALTER TABLE dbo.CustomerContact
ADD CONSTRAINT PK_CustomerContact
    PRIMARY KEY (CustomerID);

-- Create index on CustomerEmail
CREATE INDEX IX_CustomerContact_CustomerEmail
ON dbo.CustomerContact (CustomerEmail);
CREATE INDEX IX_CustomerContact_CustomerPhone
ON dbo.CustomerContact (phone);
I then do this to disable one index:
alter index IX_CustomerContact_CustomerPhone on dbo.CustomerContact disable
I see this when I check the index status:Index status for CustomerContactI decide to rebuild all indexes with this command:
ALTER INDEX ALL ON dbo.CustomerContact rebuild
After I do this, what will I see for the index status?

See possible answers