标题: 求助 [打印本页] 作者: hn0550 时间: 2004-1-24 18:51 标题: 求助 请问我的access的查询里有句“select * from b where customer_code=a”,a为需要传递参数,请问我在VB里怎么给a传递参数?谢谢!作者: zhengjialon 时间: 2004-1-25 16:04
“select * from b where customer_code='" & a & "'”作者: hn0550 时间: 2004-1-25 18:05
版住,怪我没有说明白,我那SQL语句是放在ACCESS的查询里的(储存过程),我想使用VB给它传递参数。谢谢!作者: zhengjialon 时间: 2004-1-25 18:12
存储过程就不能这样写了,
写是可以的,就是在烦琐,要好大一段代码才能运行一个带参数的存储过程,其实在ACCESS的帮助里是有示例代码的,当初我也是按示例代码来套的:(要用ADO)
ActiveConnection、CommandText、CommandTimeout、CommandType、Size 和 Direction 属性范例
该范例使用 ActiveConnection、CommandText、CommandTimeout、CommandType、Size 和 Direction 属性执行存储过程。
Public Sub ActiveConnectionX()
Dim cnn1 As ADODB.Connection
Dim cmdByRoyalty As ADODB.Command
Dim prmByRoyalty As ADODB.Parameter
Dim rstByRoyalty As ADODB.Recordset
Dim rstAuthors As ADODB.Recordset
Dim intRoyalty As Integer
Dim strAuthorID As String
Dim strCnn As String
' 定义存储过程的命令对象。
Set cnn1 = New ADODB.Connection
strCnn = "rovider=sqloledb;" & _
"Data Source=srv;Initial Catalog=pubs;User Id=saassword=; "
cnn1.Open strCnn
Set cmdByRoyalty = New ADODB.Command
Set cmdByRoyalty.ActiveConnection = cnn1
cmdByRoyalty.CommandText = "byroyalty"
cmdByRoyalty.CommandType = adCmdStoredProc
cmdByRoyalty.CommandTimeout = 15