环境:前端VB6,后端sql2008
控件:VB6窗口有两个Textbox(用于传入查询条件)、一个Datagrid、一个Adodc、一个Textbox(用于绑定Adodc的一个字段,用于查询后的显示)
目的:两个Textbox的值用作sql中select的查询条件,查询结果通过adodc传递给datagrid和Textbox显示
问题:之前查询语句在前端执行,正常。现在后端写了sql的存储过程,测试执行正常,想在前段调用这个存储过程实现查询结果显示,这样后端方便修改查询条件和语句:
Adodc1.ConnectionString = str '连接字符串,使用正常
Adodc1.CommandType = adCmdText
sql = "Execute 存储过程名称 " & Textbox1.text & "," & Textbox2.text & "" 'Execute 存储过程 @参数1,@参数2
Adodc1.RecordSource = sql
Adodc1.Refresh
Set Datagrid1.Datasource=Adodc1
这样是可行的,但前提是这个SQL的存储过程
只能是简单的select语句(带参数),不能有其它比如if等判断语句,否则就会报错。
而我需要在存储过程中实现一些判断、字符串拼接,最后才执行查询,VB这部分的代码该怎么写?
自己搜索了很久,有说用ADODB来实现,但我还需要Adodc控件来传递字段值给Textbox控件,那么adodb执行存储过程后得到的查询结果集,怎么传递给Adodc呢?