单引号截断问题

loveandkissyou 2013-05-02 10:51:56
DECLARE @man nvarchar(10)
DECLARE @woman nvarchar(10)
DECLARE @nullMarital nvarchar(10)

DECLARE @age_b17 nvarchar(50)
DECLARE @age_18_24 nvarchar(50)
DECLARE @age_25_30 nvarchar(50)
DECLARE @age_31_35 nvarchar(50)
DECLARE @age_36_40 nvarchar(50)
DECLARE @age_u41 nvarchar(50)

SELECT @man=' AND Gender=''男'' ',@woman=' AND Gender=''女'' ',@nullMarital=' MaritalStatus is null ',
@age_b17=' AND (year(getdate())-BirthYear < 18) ',
@age_18_24=' AND (year(getdate())-BirthYear between 18 and 24) ',
@age_25_30=' AND (year(getdate())-BirthYear between 25 and 30) ',
@age_31_35=' AND (year(getdate())-BirthYear between 31 and 35) ',
@age_36_40=' AND (year(getdate())-BirthYear between 36 and 40) ',
@age_u41=' AND (year(getdate())-BirthYear > 40) '

Declare @sql nvarchar(max)
select @sql = N'SELECT top 1 * FROM smith_Character_shanghai WHERE 1=1' + @age_u41+ @man
print @sql
exec sp_executesql @sql


@sql 总是被性别Gender里面的单引号截断,请问怎么解决?谢谢
...全文
110 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
loveandkissyou 2013-05-02
  • 打赏
  • 举报
回复
呵呵,还是斑竹眼光独到,非常感谢
叶子 2013-05-02
  • 打赏
  • 举报
回复

和单引号没有关系


select len(' AND Gender=''男'' ') --15
select len(' AND Gender=''女'' ') --15
select len(' MaritalStatus is null ') --22
select len(' AND (year(getdate())-BirthYear < 18) ') --37
select len(' AND (year(getdate())-BirthYear between 18 and 24) ') --50
select len(' AND (year(getdate())-BirthYear between 25 and 30) ') --50
select len(' AND (year(getdate())-BirthYear between 31 and 35) ') --50
select len(' AND (year(getdate())-BirthYear between 36 and 40) ') --50
select len(' AND (year(getdate())-BirthYear > 40) ') --37

declare @a nvarchar(10)
set @a=' AND Gender=''男'' '
select @a
/*
 AND Gende
*/
declare @b nvarchar(15)
set @b=' AND Gender=''男'' '
select @b
/*
 AND Gender='男'
*/

叶子 2013-05-02
  • 打赏
  • 举报
回复
DECLARE @man nvarchar(10) DECLARE @woman nvarchar(10) 明显长度不够。 SELECT @man=' AND Gender=''男'' ' 把nvarchar(10)改成nvarchar(30)...

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧