Foxtable(狐表)用户栏目专家坐堂 → [求助]'-' 附近有语法错误。


  共有1892人关注过本帖树形打印复制链接

主题:[求助]'-' 附近有语法错误。

美女呀,离线,留言给我吧!
simia
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:85 积分:892 威望:0 精华:0 注册:2016/6/21 13:49:00
[求助]'-' 附近有语法错误。  发帖心情 Post By:2016/8/29 17:14:00 [只看该作者]

我想在狐表里调用存储过程 jd_hd,带四个参数tm,hd,sta,ends。其中后两个是日期格式
都是引用的窗口控件的值。

Dim cmd As New SQLCommand
cmd.C        
cmd.CommandText = "Exec jd_hd  " & tm & "," & hd & "," & sta & "," & Ends & ""
Dim Count As Integer= cmd.ExecuteNonQuery()
messagebox.show(count)

每次都报错说'-' 附近有语法错误。
但是我用同样的参数在数据库里运行下面的存储过程是正常的,求帮忙看看是什么情况,抓狂一下午了T T


ALTER PROCEDURE [dbo].[jd_hd](@商品条码 Varchar(20), @活动力度 Varchar(20),@活动开始时间 Varchar(20),@活动结束时间 Varchar(20))

AS 
BEGIN
IF OBJECT_ID (N'jd_detail', N'U') IS NOT NULL
DROP TABLE jd_detail
Declare @S Varchar(8000)

select @s='Select [jd_kc].商品条码,[jd_kc].地区,[jd_xl].库存,[jd_xl].在途,[jd_xl].已下单,[jd_xl].未下单,[jd_xl].[7日],[jd_xl].[14日],[jd_xl].[28日],avg([jd_kc].库存减量) as ['+@活动力度+'_'+@活动开始时间+'至'+@活动结束时间+'] into jd_detail'
select @s=@s+' fr om ([jd_kc] left join promote on [jd_kc].商品条码=promote.商品条码 and promote.平台=''京东'' and 活动力度='''+@活动力度+''') left join [jd_xl] on [jd_kc].商品条码=[jd_xl].商品条码 and [jd_kc].地区=[jd_xl].地区'
select @s=@s+' where [jd_kc].商品条码='''+@商品条码+'''   and datediff(d,'''+ @活动开始时间+''',[jd_kc].统计日期)>=0 and datediff(d,[jd_kc].统计日期,'''+ @活动结束时间+''')>=0'
select @s=@s+' group by  [jd_kc].商品条码, [jd_kc].地区,[jd_xl].库存,[jd_xl].在途,[jd_xl].已下单,[jd_xl].未下单,[jd_xl].[7日],[jd_xl].[14日],[jd_xl].[28日]'
 print @S
 EXEC(@S)
END

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/29 17:17:00 [只看该作者]

要加上单引号

 

cmd.CommandText = "Exec jd_hd  '" & tm & "','" & hd & "','" & sta & "','" & Ends & "'"


 回到顶部
美女呀,离线,留言给我吧!
simia
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:85 积分:892 威望:0 精华:0 注册:2016/6/21 13:49:00
  发帖心情 Post By:2016/8/29 17:46:00 [只看该作者]

太感谢版主了!!!

 回到顶部