CREATE procedure JJJ(@QSRQ smalldatetime,@QC varchar(50))
AS
begin
declare @sql Nvarchar(200)
set @sql='
select *
from '+@QC+' where RQ='+@QSRQ
EXEC (@sql)
end
GO
提示:
从字符串转换为 smalldatetime 数据类型时发生语法错误。
但如果将参数设置为字符型,又查不出数据
...全文
79912打赏收藏
动态SQL中日期比较
CREATE procedure JJJ(@QSRQ smalldatetime,@QC varchar(50)) AS begin declare @sql Nvarchar(200) set @sql=' select * from '+@QC+' where RQ='+@QSRQ EXEC (@sql) end GO 提示: 从字符串转换为 smalldatetime 数据类型时发生语法错误。 但如果将参数设置为字符型,又查不出数据
CREATE procedure JJJ(@QSRQ smalldatetime,@QC varchar(50))
AS
begin
declare @sql Nvarchar(200)
set @sql='
select *
from '+@QC+' where RQ='''+cast(@QSRQ as varchar)+''''
print @sql--这里加个print看看就明白了^_^
EXEC (@sql)
end
GO
CREATE procedure JJJ(@QSRQ smalldatetime,@QC varchar(50))
AS
begin
declare @sql Nvarchar(200)
set @sql='
select *
from '+@QC+' where RQ='''+cast(@QSRQ as varchar)+''''
EXEC (@sql)
end
GO