declare @sql varchar(8000) set @sql='select distinct top 10 Code from student where Code is not null and Name='''+@name+''' and Date=convert(varchar,'''+@birthday+''',111)
declare @name char(50), @birthday datetimeset @name ='Mary' set @birthday ='1986-04-05' declare @sql varchar(8000) set @sql=' select distinct top 10 Code from student where Code is not null and Name='+@name+' and Date=convert(varchar,Convert(datetime,'''+Convert(nvarchar,@birthday)+'''),111), ' print @sql-- 这样试试select convert(varchar,Convert(datetime,'Apr 5 1986 12:00AM'),111) -- 1986/04/05
and Date='+convert(varchar,@birthday,111)+',---这句改了 或者将 @birthday datetime改为 @birthday varchar(20)
set @sql='select distinct top 10 Code from student where Code is not null and Name='''+@name+'''
and Date=convert(varchar,'''+@birthday+''',111)
@name char(50),
@birthday datetimeset @name ='Mary'
set @birthday ='1986-04-05'
declare @sql varchar(8000)
set @sql='
select distinct top 10 Code
from student
where Code is not null
and Name='+@name+'
and Date=convert(varchar,Convert(datetime,'''+Convert(nvarchar,@birthday)+'''),111),
'
print @sql-- 这样试试select convert(varchar,Convert(datetime,'Apr 5 1986 12:00AM'),111)
--
1986/04/05
或者将 @birthday datetime改为 @birthday varchar(20)