Connecting Tech Pros Worldwide Forums | Help | Site Map

giving a proc database and table names as parameters

Muhammed Al-Khoutani
Guest
 
Posts: n/a
#1: Jan 10 '07
Hello!

Is it possible to pass a stored procedure a parameter, say @table and
use it as a table in the sql command?
Finally i want a proc to copy tables from a database to another database.

THERE IS MY CODE:

CREATE PROCEDURE [user].[copytable]
@dbSRC varchar(100),
@dbTRGT varchar(100),
@table varchar(100)
AS

BEGIN TRANSACTION FreeAndCopyTable
TRUNCATE TABLE [@dbTRGT].admin.[@table]
INSERT INTO [@dbTRGT].admin.[@table]
SELECT *
FROM [@dbSRC].admin.[@table]

COMMIT TRANSACTION FreeAndCopyTable
IF @@error <0 GOTO E_Copy_Fail

E_Copy_Fail:
ROLLBACK TRANSACTION FreeAndCopyTable

GO

thanks in advance,
muh

Steve
Guest
 
Posts: n/a
#2: Jan 10 '07

re: giving a proc database and table names as parameters


Dynamic SQL:
Books Online: Using sp_executesql
Web: http://www.sommarskog.se/dynamic_sql.html

Muhammed Al-Khoutani wrote:
Quote:
Hello!
>
Is it possible to pass a stored procedure a parameter, say @table and
use it as a table in the sql command?
Finally i want a proc to copy tables from a database to another database.
>
THERE IS MY CODE:
>
CREATE PROCEDURE [user].[copytable]
@dbSRC varchar(100),
@dbTRGT varchar(100),
@table varchar(100)
AS
>
BEGIN TRANSACTION FreeAndCopyTable
TRUNCATE TABLE [@dbTRGT].admin.[@table]
INSERT INTO [@dbTRGT].admin.[@table]
SELECT *
FROM [@dbSRC].admin.[@table]
>
COMMIT TRANSACTION FreeAndCopyTable
IF @@error <0 GOTO E_Copy_Fail
>
E_Copy_Fail:
ROLLBACK TRANSACTION FreeAndCopyTable
>
GO
>
thanks in advance,
muh
Muhammed Al-Khoutani
Guest
 
Posts: n/a
#3: Jan 10 '07

re: giving a proc database and table names as parameters


Thanks!
Everything is clear now :)

Steve schrieb:
Quote:
Dynamic SQL:
Books Online: Using sp_executesql
Web: http://www.sommarskog.se/dynamic_sql.html
>
Muhammed Al-Khoutani wrote:
Quote:
>Hello!
>>
>Is it possible to pass a stored procedure a parameter, say @table and
>use it as a table in the sql command?
>Finally i want a proc to copy tables from a database to another database.
>>
>THERE IS MY CODE:
>>
>CREATE PROCEDURE [user].[copytable]
>@dbSRC varchar(100),
>@dbTRGT varchar(100),
>@table varchar(100)
>AS
>>
>BEGIN TRANSACTION FreeAndCopyTable
> TRUNCATE TABLE [@dbTRGT].admin.[@table]
> INSERT INTO [@dbTRGT].admin.[@table]
> SELECT *
> FROM [@dbSRC].admin.[@table]
>>
>COMMIT TRANSACTION FreeAndCopyTable
>IF @@error <0 GOTO E_Copy_Fail
>>
>E_Copy_Fail:
> ROLLBACK TRANSACTION FreeAndCopyTable
>>
>GO
>>
>thanks in advance,
>muh
>
Closed Thread


Similar Microsoft SQL Server bytes