vb怎样调用sql的存储过程

我写了一个存储过程名字叫P_Date带两个参数参数的类型为时间类型请问再vb6.0中如何调用... 我写了一个存储过程 名字叫 P_Date 带两个参数 参数的类型为时间类型
请问再vb6.0中如何调用
展开
 我来答
匿名用户
2014-02-17
展开全部
dim myConn as object
dim myRecord aS OBJECT
Dim mySQL As String
Dim strSQL As String
SET myConn CreateObject("ADODB.Connection") '创建对象
SET myConn CreateObject("ADODB.Connection") '创建对象

Private Sub Form_Load()
Dim mySQL As String
Dim strSQL As String
'设定连接字符串
mySQL = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;"
mySQL = mySQL + "Data Source=" & App.Path & "\Product.mdb"

myConn.ConnectionString = mySQL '设定连接字符串

'MsgBox mySQL
myConn.Open '打开连接

myRecord.ActiveConnection = myConn '设定RecordSeet的连接对象为Connection

strSQL = "select * from Products" '设定查询字符串
'打开myRecord
myRecord.Open strSQL, , adOpenDynamic, adLockOptimistic

'显示数据
ShowData
End Sub
Private Sub ShowData()
On Error Resume Next
'产品编号
Text1.Text = myRecord.Fields("ProductID").Value
'产品名称
Text2.Text = myRecord.Fields("ProductName").Value
'供应商编号
Text3.Text = myRecord.Fields("SupplierID").Value
'类别编号
Text4.Text = myRecord.Fields("CategoryID").Value
'单位数量
Text5.Text = myRecord.Fields("QuantityPerUnit").Value
'单价
Text6.Text = myRecord.Fields("UnitPrice").Value
'库存数量
Text7.Text = myRecord.Fields("UnitsInStock").Value
'订单数量
Text8.Text = myRecord.Fields("UnitsOnOrder").Value
'重订等级
Text9.Text = myRecord.Fields("ReorderLevel").Value
End Sub
'后一条按钮单击事件
Private Sub Command8_Click()
'移动记录到下一条的方法是MoveNext
'在调用MoveNext方法之前,首先需要判断,当前是不是已经超出尾纪录
'若超出尾记录,再执行MoveNext会出错
If Not myRecord.EOF Then
myRecord.MoveNext
Else
'超出尾记录,使用MoveLast恢复指向尾记录
myRecord.MoveLast
End If
'显示数据
ShowData

End Sub
'前一条按钮单击事件
Private Sub Command7_Click()
'判断是否超出头记录
'若超出头记录,再执行MovePrevious会出错
If Not myRecord.BOF Then
myRecord.MovePrevious
Else
'超出头记录
'使用MoveFirst恢复到指向第一条记录
myRecord.MoveFirst
End If
'显示数据
ShowData
End Sub
'尾记录按钮单击事件
Private Sub Command9_Click()
'调用MoveLast
myRecord.MoveLast
'显示记录
ShowData
End Sub
Private Sub Command5_Click()
'调用Recordset对象cancelUpdate方法取消数据保存
myRecord.CancelUpdate
myRecord.MoveFirst
'显示数据
ShowData
End Sub

'首记录按钮单击事件
Private Sub Command6_Click()
'调用MoveFirst移动
myRecord.MoveFirst
'显示记录
ShowData
End Sub
Private Sub Command4_Click()
On Error Resume Next
'保存数据,这里需要通过编程来实现
'产品编号
'产品编号不能为空
If Text1.Text = "" Then
MsgBox "产品编号不能为空!"
Text1.SetFocus
Exit Sub
End If
'其他文本框的判断类似,这里省略
'保存产品编号
myRecord.Fields("ProductID").Value = Val(Text1.Text)
'保存产品名称
myRecord.Fields("ProductName").Value = Text2.Text
'保存供应商编号
myRecord.Fields("SupplierID").Value = Val(Text3.Text)
'保存类别编号
myRecord.Fields("CategoryID").Value = Val(Text4.Text)
'保存单位数量
myRecord.Fields("QuantityPerUnit").Value = Text5.Text
'保存单价
myRecord.Fields("UnitPrice").Value = Val(Text6.Text)
'保存库存数量
myRecord.Fields("UnitsInStock").Value = Text7.Text
'保存订单数量
myRecord.Fields("UnitsOnOrder").Value = Val(Text8.Text)
'保存重订等级
myRecord.Fields("ReorderLevel").Value = Val(Text9.Text)

'调用Recordset对象Update方法保存数据
myRecord.Update

'显示数据
ShowData

End Sub
匿名用户
2014-02-17
展开全部
调用存储过程查询数据
Dim MyComm As ADODB.Command
Set MyComm = MyServer.CreateObject("ADODB.Command")
With MyComm
.ActiveConnection = MarketConn 'MarketConn是数据库连接字串
.CommandText = "spGetList" '指定存储过程名
.CommandType = 4 '表明这是一个存储过程
.Prepared = True '要求将SQL命令先行编译
.Parameters.Append .CreateParameter("RETURN", 2, 4) '返回值(记录总数)
.Parameters.Append .CreateParameter("@BeginSql", 200, 1, 5000, sProcBeginSQL) '输入参数(查询开始SQL)
.Parameters.Append .CreateParameter("@EndSql", 200, 1, 1000, sProcEndSQL) '输入参数(查询结尾SQL)
.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, -1) '输入参数(频道ID)
Set Rs_GetList = .Execute
End With
If Rs_GetList.State = 0 Then '无数据
iRecordTotal = -1
Else
Rs_GetList.Close '注意:若要取得参数值,需先关闭记录集对象
iRecordTotal = MyComm(0)
End If
Set MyComm = Nothing
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-02-17
展开全部
直接调用VB里的控件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式