SQL Server - Generate a script for fields which are part of each table in database
SQL Server - Generate a script for fields which are part of
each table in database
In my case I had AddOprID , and EditOprID to part of each table and same is foreign key reference to User Master.
Declare @UserTable as Varchar(100)
Declare @Schema as Varchar(100)
Declare @Table as Varchar(100)
Declare @SQL as varchar(8000)
SET @Schema ='dbo'
SET @Table ='TranSales'
' Alter TABLE [' + @Schema +'].[' + @Table + '] ADD [AddDate] [datetime] NOT NULL ' + Convert(Varchar,CHAR(10)) +
' Alter TABLE [' + @Schema +'].[' + @Table + '] ADD [EditOprID] [int] NULL ' + Convert(Varchar,CHAR(10)) +
' Alter TABLE [' + @Schema +'].[' + @Table + '] ADD [EditDate] [datetime] NULL ' + Convert(Varchar,CHAR(10)) +
' REFERENCES [' + @Schema +'].['+ @UserTable +'] ([ID]) ' + Convert(Varchar,CHAR(13) ) +
' GO ' + Convert(Varchar,CHAR(13)) +
' ALTER TABLE [' + @Schema +'].[' + @Table + '] CHECK CONSTRAINT [FK_' + @Table + '_'+ @UserTable +'] ' + Convert(Varchar,CHAR(13)) +
' GO ' + Convert(Varchar,CHAR(13)) +
' REFERENCES [' + @Schema +'].['+ @UserTable +'] ([ID]) ' + Convert(Varchar,CHAR(13)) +
' GO ' + Convert(Varchar,CHAR(13)) +
' GO ' + Convert(Varchar,CHAR(13))
OUTPUT
-- -This will create fields in Sales Table
Alter TABLE [dbo].[TranSales] ADD [AddOprID] [int] NOT NULL
Alter TABLE [dbo].[TranSales] ADD [AddDate] [datetime] NOT NULL
Alter TABLE [dbo].[TranSales] ADD [EditOprID] [int] NULL
Alter TABLE [dbo].[TranSales] ADD [EditDate] [datetime] NULL
--- Foreign Key Script for the above fields
GO
ALTER TABLE [dbo].[TranSales] WITH CHECK ADD CONSTRAINT [FK_TranSales_mastUser] FOREIGN KEY([AddOprID])
REFERENCES [dbo].[mastUser] ([ID])
GO
ALTER TABLE [dbo].[TranSales] CHECK CONSTRAINT [FK_TranSales_mastUser]
GO
ALTER TABLE [dbo].[TranSales] WITH CHECK ADD CONSTRAINT [FK_TranSales_mastUser1] FOREIGN KEY([EditOprID])
REFERENCES [dbo].[mastUser] ([ID])
GO
ALTER TABLE [dbo].[TranSales] CHECK CONSTRAINT [FK_TranSales_mastUser1]
GO
Comments
Post a Comment