请问如何使用VB连接远程SQL Server数据库,方法及示例?

baiyongming 2008-12-15 09:43:00
数据库放在远程服务器,本机运行VB程序,读取远程数据库的内容并显示,
请求高手写一段最简单的代码,读取远程数据库的内容。
谢谢!
...全文
1972 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaITOldMan 2008-12-15
  • 打赏
  • 举报
回复
'客户端不需要安装SQLSERVER,只要有ADO驱动即可:
dim conn ad new adodb.connection
with conn
If .State = adStateOpen Then .Close
.ConnectionString = "driver=SQL Server;server=IP地址;uid=sa;pwd=;database=数据库名"
.CommandTimeout = 120
.Open
end with
饮水需思源 2008-12-15
  • 打赏
  • 举报
回复
在客户端安装mdac2.8mdactyp.exe,微软网站有下载的
如果还不行那在控件面板的ODBC中手工配制ODBC到SQL试试
baiyongming 2008-12-15
  • 打赏
  • 举报
回复

Dim CN As New ADODB.Connection
Dim strSQL As String

Private Sub cmdConnect_Click()
CN.ConnectionString = "Driver=SQL Server;Server=我的IP;uid=sa;pwd=123456;database=testdb"
CN.CommandTimeout = 20
CN.Open
MsgBox "连接成功"
strSQL = "Insert into testtable(sn,sname,sex) Values('123','ABC','男')"
CN.Execute strSQL
CN.Close
End Sub


我用上述代码可以把数据插入SQL Server中,可把程序拷贝到别人机器上,却提示“错误代码80004005,run-time错误,SQL Server不存在或拒绝访问”,要怎么办?
baiyongming 2008-12-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 Leftie 的回复:]
VB code'客户端不需要安装SQLSERVER,只要有ADO驱动即可:
dim conn ad new adodb.connection
with conn
If .State = adStateOpen Then .Close
.ConnectionString = "driver=SQL Server;server=IP地址;uid=sa;pwd=;database=数据库名"
.CommandTimeout = 120
.Open
end with
[/Quote]

请问,客户机的ADO驱动怎么安装,谢谢。
饮水需思源 2008-12-15
  • 打赏
  • 举报
回复
'客户端不需要安装SQLSERVER,只要有ADO驱动即可:
dim conn ad new adodb.connection
with conn
If .State = adStateOpen Then .Close
.ConnectionString = "driver=SQL Server;server=IP地址;uid=sa;pwd=;database=数据库名"
.CommandTimeout = 120
.Open
end with
baiyongming 2008-12-15
  • 打赏
  • 举报
回复
对了,客户机需要安装SQL Server吗?
baiyongming 2008-12-15
  • 打赏
  • 举报
回复
问题解决了。
参看:http://blog.csai.cn/user1/15087/archives/2007/15670.html


============= 其次,使用 telnet 命令检查SQL Server服务器工作状态 =============
telnet <服务器IP地址> 1433

如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接
如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,
也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听.


5 检查服务器是否在1433端口侦听。如果服务器没有在tcp连接的1433端口侦听,则是连接不上的。检查方法是在服务器的dos或命令行下面输入 netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127.0.0.1 1433 listening 的项。如果没有,则通常需要给sql server 2000打上至少sp3的补丁。其实在服务器端启动查询分析器,输入 select @@version 执行后可以看到版本号,版本号在8.0.2039以下的都需要打补丁。
如果以上都没问题,这时你再做telnet 服务器ip 1433 测试,将会看到屏幕一闪之后光标在左上角不停闪动。恭喜你,你马上可以开始在企业管理器或查询分析器连接了。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧