日期:2014-05-18  浏览次数:20513 次

【求助】删除SQL SERVER数据库中所有含有(调用)一个主键的所有行
我需要删除一个数据库中一段时间的数据,我找到了一个主键,主要删除所有调用关联这个主键的所有数据我认为就可以达到我的要求了。

主键的数值:hj2009030215
分析下:标示hj+年月日+15。15代表在那一天的第几次。也就是会有hj2009030201,hj2009030202,等等这样。

请问如何在数据库中的所有表中删除所有关联调用这个的所有行?

------解决方案--------------------
SQL code
declare @startdate datetime  --你一段时间的起始日
declare @enddate             --你一段时间的终止日
set @startdate='2011-10-20'
set @enddate='2011-10-25'
delete from tb               --你要删除数据的表 
where 主键>='hj'+convert(varchar(8),@startdate,112) 
and 主键<'hj'+convert(varchar(8),dateadd(d,1,@enddate),112)