sql 问题 声明了变量 还是查询不到信息
发布网友
发布时间:2023-09-22 15:33
我来回答
共1个回答
热心网友
时间:2024-11-28 00:00
说一下你的问题
1,你那个变量不能定义成nchar,你要设置成不定长的nvarchar
2,这种查询属于动态sql,你这么样不行
3,你这一看就属于模糊查询,百分号呢?
declare @a nvarchar(100)
declare @sql nvarchar(1000)
set @a='衣'
set @sql='select * from dbo.练习 where 学号 like ''%'+ @a +'%'' OR 姓名 like ''%'+ @a +'%'' OR 语文分数 like ''%'+ @a +'%'' OR 数学分数 like ''%'+ @a +'%'' OR 家庭地址 like ''%'+ @a +'%'''
--print @sql --这句我把sql可以打印,你可以把注释去掉看一下
exec (@sql)
还有一个,数字很可能在你这里没法模糊查询,所以上边的还是有可能会报错,所以你要是查询还有错的话,你把分数那几个模糊查询给去掉