将语句分配给 EXEC sp_executesql 的 @ 变量时出现等号问题
Issues with equal sign when assigning statement to @ variable for EXEC sp_executesql
您好:我正在尝试将下面的Insert and select语句封装成一个变量,用于SQL到运行。
当计算中包含等号(或就在附近)时会出现问题
必须转换 CustomPollerAssignmentID 列,因为它本身就是一个 PK 和一个唯一标识符(见图)
传递给 sp_executesql 时,必须做什么才能使语句正确求值?
我收到如下所示的语法错误
declare
@date datetime,
@query nvarchar(Max)
set @date = getdate()-4
set @query = --'Insert into [SolarWindsOrion].[dbo].[BWC_VPN_Hourly_Long_Store]
'SELECT * FROM [SolarWindsOrion].[dbo].[CustomPollerStatistics_Hourly]
where Cast(CustomPollerAssignmentID as nvarchar(max)) = 63FEB60-4516-4C1A-9A11-DB30ACA44301'
EXEC sp_executesql @query
更新-->
我尝试添加单引号。
虽然该语句执行.. 没有返回结果。见下图
您需要像这样 '63FEB60-4516-4C1A-9A11-DB30ACA44301'
将其放在引号中,因此您的即席查询将如下所示:
declare
@date datetime,
@query nvarchar(Max)
set @date = getdate()-4
set @query = --'Insert into [SolarWindsOrion].[dbo].[BWC_VPN_Hourly_Long_Store]
'SELECT * FROM [SolarWindsOrion].[dbo].[CustomPollerStatistics_Hourly]
where Cast(CustomPollerAssignmentID as nvarchar(max)) = ''63FEB60-4516-4C1A-9A11-DB30ACA44301'''
EXEC sp_executesql @query
您好:我正在尝试将下面的Insert and select语句封装成一个变量,用于SQL到运行。
当计算中包含等号(或就在附近)时会出现问题 必须转换 CustomPollerAssignmentID 列,因为它本身就是一个 PK 和一个唯一标识符(见图)
传递给 sp_executesql 时,必须做什么才能使语句正确求值? 我收到如下所示的语法错误
declare
@date datetime,
@query nvarchar(Max)
set @date = getdate()-4
set @query = --'Insert into [SolarWindsOrion].[dbo].[BWC_VPN_Hourly_Long_Store]
'SELECT * FROM [SolarWindsOrion].[dbo].[CustomPollerStatistics_Hourly]
where Cast(CustomPollerAssignmentID as nvarchar(max)) = 63FEB60-4516-4C1A-9A11-DB30ACA44301'
EXEC sp_executesql @query
更新-->
我尝试添加单引号。
虽然该语句执行.. 没有返回结果。见下图
您需要像这样 '63FEB60-4516-4C1A-9A11-DB30ACA44301'
将其放在引号中,因此您的即席查询将如下所示:
declare
@date datetime,
@query nvarchar(Max)
set @date = getdate()-4
set @query = --'Insert into [SolarWindsOrion].[dbo].[BWC_VPN_Hourly_Long_Store]
'SELECT * FROM [SolarWindsOrion].[dbo].[CustomPollerStatistics_Hourly]
where Cast(CustomPollerAssignmentID as nvarchar(max)) = ''63FEB60-4516-4C1A-9A11-DB30ACA44301'''
EXEC sp_executesql @query