30 jan 2012

Find rows with constraint errors

BEGIN
declare @Subtable as nvarchar(100), @roottable as nvarchar(100),  @idColumn as nvarchar(100) , @SQLStatement as nvarchar(MAX)
set @Subtable='[table that uses id from source table]'
set @Roottable='[source table]'
set @idColumn='[idColumnName]'
SET @SQLStatement = 'SELECT * FROM ' + @Subtable + ' as st ' + ' where not exists(select *  from ' + @Roottable + ' as rt where st.' + @idColumn + '=rt.' + @idColumn + ')and ' + @idColumn + ' is not null'
PRINT @SQLStatement
exec sp_executesql @SQLStatement
END

Execute stored procedureForEachRow

-- =============================================
-- Author:        elconomeno
-- Create date:
-- Description:   
-- =============================================
CREATE PROCEDURE [dbo].[ExeCuteStoredProcedureForEachRow]

AS
BEGIN
declare @ParameterOfStoredPRocedureToExecute1 varchar(255)
declare cur cursor
for select ColumnWithPArameterValue
from TblToReadFrom -- or from dbo.MyTableFunction()

open cur
fetch next from cur into @ParameterOfStoredPRocedureToExecute1
while @@fetch_status = 0
begin
exec [dbo].[StoredProcedureToExecute] @ParameterOfStoredPRocedureToExecute1
fetch next from cur into @ParameterOfStoredPRocedureToExecute1

end
END

26 jan 2012

find dependent objects from sql table

BEGIN
set @Tablename= 'tablename'
declare @tablename as nvarchar(max)
Select Distinct
o.Name 'TableName',
op.Name 'DependentObject',
op.XType 'objecttype'
From SysObjects o
INNER Join SysDepends d ON d.DepId = o.Id
INNER Join SysObjects op on op.Id = d.Id
Where o.XType = 'U' and o.Name= @Tablename
END

19 jan 2012

input in database from csv file

BULK
INSERT YourTableName

FROM 'C:\Your.csv'

WITH
(
FIELDTERMINATOR = ';',

ROWTERMINATOR = '\n'

)
GO

11 jan 2012

trigger to update timestamp in an sql table

USE [DatabaseName]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[updateLastEditTime]
ON [dbo].[LogonLog]
FOR UPDATE, INSERT
AS
UPDATE LogonLog SET [timestamp] = CURRENT_TIMESTAMP 
FROM LogonLog Inner Join Inserted On
LogonLog.username = Inserted.username
and LogonLog.computername  = Inserted.computername