SQL Server: как получить имя базы данных в качестве параметра в хранимой процедуре

Я пытаюсь создать простую хранимую процедуру, которая запрашивает таблицу sys.tables.

CREATE PROCEDURE dbo.test
    @dbname NVARCHAR(255),
    @col NVARCHAR(255)
AS
    SET NOCOUNT ON
    SET XACT_ABORT ON

    USE @dbname

    SELECT TOP 100 *
    FROM sys.tables 
    WHERE name = @col
GO

Кажется, это не сработает, потому что я должен поставить GO после USE @dbname, но это завершит создание этой процедуры? Как я могу поместить этот выбор базы данных в эту процедуру, чтобы пользователь мог указать имя базы данных в качестве параметра для этой процедуры?

15
задан jjoras 15 October 2010 в 15:46
поделиться