Scripts

Technical Article

Calculate distance between two points

The calculation of distance between two points using standard spherical geometry can be inaccurate for short distances (ten miles or less) because the sine function of very small angles approaches zero. The haversine approach (http://en.wikipedia.org/wiki/Haversine_formula) turns this around, so it is very accurate at small distances but has larger errors (about ten miles) for points […]

4 (1)

You rated this post out of 5. Change rating

2006-05-18 (first published: )

685 reads

Technical Article

BCP OUT all table data in your Database

Data Recovery is vital. This script will cursor through your database and BCP OUT the table data to a directory specifically for each day of the week (in numbers - where 1 = Sunday and 7 = Saturday) in order to have table recoverability up to 7 days. The first step is to create the […]

You rated this post out of 5. Change rating

2006-05-11 (first published: )

698 reads

Technical Article

Server Backup History Report (updated 2006-04-11)

Server Backup History Report (Full DB Backups only) 1. lists all databases with no backup history 2. lists last backup for other databases includes Date, User, Size, Duration, Age, Finish Date & Location Includes system databases Excludes TempDB Excludes backup history data where backupmediafamily.device_type = 7 these are typically created by Veritas BackupExec Tested on […]

4.67 (3)

You rated this post out of 5. Change rating

2006-04-28 (first published: )

4,587 reads

Technical Article

Update a table column with a sequence number v3

Both Sachinvaishnav and Mark Chad have submitted scripts to populate a column with a sequence number. The first solution uses a cursor; the second uses the SQL 2005 ROW_NUMBER() function.v1:http://www.sqlservercentral.com/scripts/viewscript.asp?scriptid=1643v2:http://www.sqlservercentral.com/scripts/viewscript.asp?scriptid=1664Since neither script requires a specific order for the sequence number, the same result can be achieved with a single UPDATE statement.

You rated this post out of 5. Change rating

2006-04-26 (first published: )

392 reads

Technical Article

Determine Distance Between Any Two Locations

This function allows you to calculate the distance in miles or kilometers between any two points on the earth. I created to calculate the distance between two zip codes but is can be used for any two coordinates for which latitude and longitude is known.NOTE: A database for the coordinates of any US postal code […]

5 (4)

You rated this post out of 5. Change rating

2006-04-25 (first published: )

1,267 reads

Blogs

SQL Saturday Boston Slides and Code

By

Thanks to everyone who attended my sessions today at SQL Saturday Boston 2025. I’ve...

Scaling SQL Server 2025 Vector Search with Load-Balanced Ollama Embeddings

By

SQL Server 2025 introduces native support for vector data types and external AI models....

Advice I Like: Fear and Imagination

By

Fear is fueled by a lack of imagination. The antidote to fear is not...

Read the latest Blogs

Forums

How to use data pre-computed in previous ETL SSIS Nodes?

By rafa040500

I'm building ETL packages in SSIS. My data comes from an OLE DB Source...

Building AI Governance and Policies- First Steps

By dbakevlar

Comments posted to this topic are about the item Building AI Governance and Policies-...

Simple delete causes table scan on other tables with foreign key

By askcoffman

Why is sql doing a full scan VS seeking on the index? I've included...

Visit the forum

Question of the Day

Checking Identities

The DBCC CHECKIDENT command is used when working with identity values. I have a table with 10 rows in it that looks like this:

TravelLogID CityID  StartDate   EndDate
1           1       2025-01-11  2025-01-16
2           2       2025-01-11  2025-01-16
3           3       2025-01-11  2025-01-16
4           4       2025-01-11  2025-01-16
5           5       2025-01-11  2025-01-16
6           6       2025-01-11  2025-01-16
7           7       2025-01-11  2025-01-16
8           8       2025-01-11  2025-01-16
9           9       2025-01-11  2025-01-16
10          10      2025-01-11  2025-01-16
The docs for DBCC CHECKIDENT say this if I run with only the table parameter: "If the current identity value for a table is less than the maximum identity value stored in the identity column, it is reset using the maximum value in the identity column. " I run this code:
DELETE dbo.TravelLog WHERE TravelLogID >= 9
GO
DBCC CHECKIDENT(TravelLog, RESEED)
GO
INSERT dbo.TravelLog
(
    CityID,
    StartDate,
    EndDate
)
VALUES
(4, '2025-09-14', '2025-09-17')
GO
What is the identity value for the new row inserted by the insert statement above?

See possible answers