数据库执行存储过程问题~~
createproceduresp_pro_info@kunvarchar(50),@datedatetime,@date1datetime,@widint,@wid1i...
create procedure sp_pro_info
@ku nvarchar(50),@date datetime,@date1 datetime,@wid int,@wid1 int
AS
declare @sql varchar(1000)
create table ##temp
(idd bigint identity(1,1) primary key,
ID int not null,
AID int,WID int,GUID varchar(50), AD_Date datetime,
IPInt bigint,Province nvarchar(50),City nvarchar(50),UserId bigint
)
set @sql='select *from '+@ku+'where AD_date>=convert(datetime,'''+@date+''')and AD_date<convert(datetime,'''+@date1+''')
''and wid>='+@wid+' and wid<='+@wid1+''
exec(@sql)
select wid,count(*) as PV
from ##temp
declare @ku nvarchar(50),@date datetime,@date1 datetime,@wid int,@wid1 int
set @ku='PJ90201.dbo.pv'
set @date='20130922'
set @date1='20131201'
set @wid=10361
set @wid1=10369
execute sp_pro_info @ku,@date,@date1,@wid,@wid1
go
drop table ##temp
drop procedure sp_pro_info
大神 这个还是有问题 执行存储的时候提示:从字符串向 datetime 转换时失败。怎么改呀?? 展开
@ku nvarchar(50),@date datetime,@date1 datetime,@wid int,@wid1 int
AS
declare @sql varchar(1000)
create table ##temp
(idd bigint identity(1,1) primary key,
ID int not null,
AID int,WID int,GUID varchar(50), AD_Date datetime,
IPInt bigint,Province nvarchar(50),City nvarchar(50),UserId bigint
)
set @sql='select *from '+@ku+'where AD_date>=convert(datetime,'''+@date+''')and AD_date<convert(datetime,'''+@date1+''')
''and wid>='+@wid+' and wid<='+@wid1+''
exec(@sql)
select wid,count(*) as PV
from ##temp
declare @ku nvarchar(50),@date datetime,@date1 datetime,@wid int,@wid1 int
set @ku='PJ90201.dbo.pv'
set @date='20130922'
set @date1='20131201'
set @wid=10361
set @wid1=10369
execute sp_pro_info @ku,@date,@date1,@wid,@wid1
go
drop table ##temp
drop procedure sp_pro_info
大神 这个还是有问题 执行存储的时候提示:从字符串向 datetime 转换时失败。怎么改呀?? 展开
1个回答
展开全部
你的存储过程定义了datetime类型,create procedure sp_pro_info@ku nvarchar(50),@date datetime,@date1 datetime,@wid int,@wid1 int你使用存储过程要输入标准的datetime格式,如 2013-12-20 00:00:00.000
更多追问追答
追问
还是有问题,会不会是在定义存储过程中的set语句中出问题呀,set @sql='select *from '+@ku+'where AD_date>=convert(datetime,'''+@date+''')and AD_date='+@wid+' and wid<='+@wid1+''
追答
你这一句的datetime写错了:
set @date='20130922' --- 改成 '2013-09-22 00:00:00.000'
set @date1='20131201' --- 改成 '2013-12-01 00:00:00.000'
set @wid=10361
set @wid1=10369
来自:求助得到的回答
壹寰(深圳)科技文化有限公司
2021-03-27 广告
2021-03-27 广告
要找正规专业的公司,行业口碑也比较重要。以上内容如果还觉得不够全面,也可以沟通下壹寰(深圳)科技文化有限公司。91数据恢复是壹寰(深圳)科技文化有限公司旗下专业数据恢复品牌,91数据恢复专注于勒索病毒数据恢复、勒索病毒数据修复、数据库修复、...
点击进入详情页
本回答由壹寰(深圳)科技文化有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询