Foxtable(狐表)用户栏目专家坐堂 → 存储过程中的输入参数能否是表达式?


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

主题:存储过程中的输入参数能否是表达式?

帅哥哟,离线,有人找我吗?
happyft
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1930 积分:17564 威望:0 精华:0 注册:2014/7/29 19:09:00
存储过程中的输入参数能否是表达式?  发帖心情 Post By:2016/11/8 23:57:00 [只看该作者]

如查储存过程的输入参数是一个表达式,要怎么写才正确?

Dim strflt As String = " 进出日期 > '2016-9-30'"
 。。。。。
cmd.CommandText = "Exec tj_inoutstock '" & strflt & "'"  有单引号
cmd.CommandText = "Exec tj_inoutstock " & strflt & "   不要单引号
cmd.CommandText = "Exec tj_inoutstock N'strflt "  按sql语法在变量前面加N'

 tbl.DataSource = cmd.ExecuteReader

上面三种方式写运行储存过程都会出错,请问应该如何写才对?

谢谢






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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/9 8:41:00 [只看该作者]

Dim strflt As String = " 进出日期 > ''2016-9-30''"
 。。。。。
cmd.CommandText = "Exec tj_inoutstock '" & strflt & "'"  有单引号

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/11/9 12:26:00 [只看该作者]

 一般,拼接sql语句的时候,都要把单引号处理一下

 

Dim strflt As String = " 进出日期 > '2016-9-30'"

strflt = strflt.Replace("'", "''")

[此贴子已经被作者于2016/11/9 12:26:01编辑过]

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


加好友 发短信
等级:八尾狐 帖子:1930 积分:17564 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2016/11/9 12:56:00 [只看该作者]

在储存过程时面反复试了很久都不知道,原来是这里出的问题,谢谢两位老师!

 回到顶部