Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
| Author |
Topic |
|
maifs
Yak Posting Veteran
57 Posts |
Posted - 2010-04-20 : 13:56:08
|
| ALter Proc [dbo].[sp_sng_purging_all_transactions] @range_dte DATETIME = NULLASDeclare @format_converted_dte varchar(50)Declare @table_nme varchar(100)Declare @col_nme varchar(100)Declare @resulting_year integerDeclare @counter integerBeginDeclare Getting_All_Tables_DataCursor FOrSelect table_name,column_nameFrom Information_schema.columnswhereupper(column_name) = upper('execution_dte')ANDupper(table_name) not like upper('%_vw%')ANDupper(table_name) not like upper('%_view%')AND(upper(table_name) not like upper('%security%')ANDupper(table_name) not like upper('%setup%'))ORupper(table_name) not like upper('%admin%'))Open Getting_All_Tables_Dataset @counter = ( Select count (*) From Information_schema.columnswhereupper(column_name) = upper('execution_dte')ANDupper(table_name) not like upper('%_vw%')ANDupper(table_name) not like upper('%_view%')AND(upper(table_name) not like upper('%security%')ANDupper(table_name) not like upper('%setup%'))ORupper(table_name) not like upper('%admin%'))Fetch Next From Getting_All_Tables_Data into @table_nme, @col_nmeWhile @@FETCH_STATUS = 0BEGINset @resulting_year = Dateif (year, @range_dte, getdate())IF (exists (Select * from @table_nme where @col_nme = @range_dte) AND @resulting_year > = 7 AND @counter <= 1)Begin set @format_converted_dte = Convert (Date|Time, Convert (varchar, @range_dte,112),112); exec('Delete From' + @table_nme + 'Where' + @col_nme + '=' + @format_converted_dte + ''); Fetch Next From Getting_ALll_Tables_Data into @table_nme, @col_nme ;endElseBeginreturn -1ENDENDClose Getting_All_Tables_DataDEALLOCATE Getting_All_Tables_Datareturn 1END Problem is occuring in this statement and duplicate records are coming.IF (exists (Select * from @table_nme where @col_nme = @range_dte) AND @resulting_year > = 7 AND @counter <= 1) |
|
|
maifs
Yak Posting Veteran
57 Posts |
Posted - 2010-04-20 : 22:12:40
|
| can anybody solve it ?Problem is occuring in this statement and duplicate records are coming.IF (exists (Select * from @table_nme where @col_nme = @range_dte) AND @resulting_year > = 7 AND @counter <= 1) |
 |
|
|
visakh16
Very Important crosS Applying yaK Herder
52326 Posts |
Posted - 2010-04-21 : 01:39:22
|
| what according to you are duplicates? you may be better off explaining your problem with some sample data and then show what you want------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/ |
 |
|
|
|
|
|