标题:急救:在vb中如何使用ADO访问SQLSERVER急!急!急!
只看楼主
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
 问题点数:0 回复次数:7 
急救:在vb中如何使用ADO访问SQLSERVER急!急!急!

请问各位大虾,在b中如何使用ado访问sqlserver,最好能把具体的代码给出来,希望各位能不吝赐教。

搜索更多相关主题的帖子: ADO SQLSERVER 急救 访问 
2005-11-07 09:19
hl225
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-9-7
得分:0 
添加ADO控件,右键属性里面有的

2005-11-07 10:29
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
得分:0 

我是做了一个公共模块,在模块中用程序连接数据库,具体代码如下:但就是连接不上,不知道哪里错了
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sTokens = Split(SQL)
Set cnn = New ADODB.Connection
cnn.Open ConnectionString
If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
cnn.Execute SQL
MsgString = sTokens(0) + "query successful"
Else
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic
'rst.MoveLast
'getRecordCount
Set ExecuteSQL = rst
MsgString = "查询到" + rst.RecordCount + "条记录"
End If
ExecuteSQL_Exit:
'清空数据集对象
Set rst = Nothing
Set cnn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "查询错误" + Err.Description
Resume ExecuteSQL_Exit
End Function

Public Function ConnectionString() As String

ConnectionString = "Provider=SQLOLEDB.1;DataSource=H:\西译中学\data\studentsystem.MDF"
End Function


2005-11-07 10:36
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
得分:0 

在vb6中可以使用ado直接访问sqlserver数据库吗?我是指不需要手动连接的那一种,直接编好程序就可以访问


2005-11-07 11:03
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
得分:0 
哪位高手能给我指点一下迷津啊?

2005-11-07 11:04
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
得分:0 
具体报告说什么错误
而且你用的好象是连接access的方法
你应该使用连接sql的方法试一下

大家都是朋友,有空就来坐坐!
2005-11-07 13:43
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
得分:0 

在vb中用ado连接sqlserver数据库的问题已经解决:
Public Function ConnectionString() As String

ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=studentsystem;Data Source=(local)"
End Function
使用vb里面的ado控件生成一个连接串,然后把这个连接串放到程序里就可以了


2005-11-07 18:57
rwlinfuxin
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-7
得分:0 
不过现在又出现了第二个问题:“当前recordset不支持书签。这可能是提供者或选定的光标类型限定的。”
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sTokens = Split(SQL)
Set cnn = New ADODB.Connection
cnn.Open ConnectionString
If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
cnn.Execute SQL
MsgString = sTokens(0) + "query successful"
Else
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, adOpenDynamic, adLockOptimistic
'rst.MoveLast
'getRecordCount
Set ExecuteSQL = rst
MsgString = "查询到" + rst.RecordCount + "条记录"
End If
ExecuteSQL_Exit:
'清空数据集对象
Set rst = Nothing
Set cnn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "查询错误" + Err.Description
Resume ExecuteSQL_Exit
End Function
我已经将光标类型改为adOpenDynamic,但还是不行,不知为什么???

2005-11-07 19:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-32893-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014765 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved