T-SQL

External Article

Using DELETE CASCADE Option for Foreign Keys

  • Article

Referential integrity is a very important thing to consider when designing a database. In my years as a DBA I've seen database designs that sit on both ends of the spectrum, none at all and cases where every table is linked to multiple tables. While the later certainly can be a little more difficult to work with it ensures the integrity of your data stays intact. The other end provides much more flexibility when it comes to updating and deleting data from your database, whether it's being done through the application or directly on the backend, but has the issue of possible orphan records if things are not done properly. This tip will look at the DELETE CASCADE option when creating foreign key constraints and how it helps keep the referential integrity of your database intact.

2012-08-13

3,973 reads

SQLServerCentral Article

How to Make Scalar UDFs Run Faster (SQL Spackle)

  • Article

It's a well known fact that Scalar UDFs are the stuff of performance nightmares in T-SQL. But are they really as bad as they say? SQL Server MVP Jeff Moden shows us that they might not really be as big a problem as you might think and what you can do when they actually are.

4.93 (102)

You rated this post out of 5. Change rating

2014-06-24 (first published: )

27,359 reads

Blogs

Cloud Data Driven User Group 2025 – Slides & Scripts

By

The slidedeck and the SQL scripts for the session Indexing for Dummies can be...

Leading Through Change: Guiding Teams in Times of Uncertainty

By

Change is not a disruption in technology; it is the rhythm. New frameworks appear,...

The Mystery of the Locked-Up Database -Scooby Dooing Episode 6

By

No Scooby-Doo story is complete without footprints leading to a hidden passage. In SQL...

Read the latest Blogs

Forums

Don't Forget About Financial Skills

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Don't Forget About Financial Skills

Building a Simple SQL/AI Environment

By Tony Savoie

Comments posted to this topic are about the item Building a Simple SQL/AI Environment

Checking Identities

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Checking Identities

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