【发布时间】:2017-07-18 22:23:12
【问题描述】:
我想将以下选择的结果存储到一个变量中。
SET @SearchSchema = '(SELECT REPLACE(name,''Change Log Setup'', ''Change Log Entry'') as Name FROM ['+@DBName+'].sys.tables where name LIKE ''%$Change Log Setup'')'
我也尝试使用 exec sp_executesql。
这是整个代码:
DECLARE @DBName VARCHAR(5000);
DECLARE @period VARCHAR(5000);
DECLARE @SQLEXE VARCHAR(8000);
DECLARE @SearchSchema NVARCHAR(4000);
DECLARE @Authentification VARCHAR(1000);
DECLARE @Path VARCHAR(1000);
DECLARE @ServerName VARCHAR(1000);
SET @period = '''2017-01-01 00:00:00'' AND ''2017-12-31 23:59:59''';
SET @Path = 'C:\Users\Public\Documents\';
SET @Servername = '-S nav-ey-demo2\NAVDEMO';
SET @DBName = (SELECT name FROM master.dbo.sysdatabases where name LIKE '%NAV%');
EXECUTE ('USE [' + @DBName+']'); Select db_name();
SET @SearchSchema = '(SELECT REPLACE(name,''Change Log Setup'', ''Change Log Entry'') as Name FROM ['+@DBName+'].sys.tables where name LIKE ''%$Change Log Setup'')'
如果我使用
SELECT @SearchSchema
出现正确的值。
通过使用
PRINT '@SEARCHSCHEMA ' + @SearchSchema
显示 SELECT 字符串:
SEARCHSCHEMA (SELECT REPLACE(name,'Change Log Setup', 'Change Log Entry') as Name FROM [Demo Database NAV (10-0)].sys.tables where name LIKE '%$Change Log Setup')
【问题讨论】:
-
不清楚你的实际问题是什么。
-
我想将 SELECT 结果存储到变量中。
标签: sql sql-server tsql