数据库链接不上啊 求大神帮忙检查一下 链接字符串

写BUG的胡汉三 2018-12-13 10:30:23
这是代码:
Public Sub Opendb()
On Error GoTo Errmsg
If Rs.state = 0 Then Rs.CursorLocation = adUseClient Else If Rs.state = 1 Then Rs.Close
If Cn.state = 0 Then
Set Cn = Nothing
Cn.ConnectionString = "Provider=sqloledb;Connect timeout=1;Data Source=" & ServerName & ";Initial Catalog=" & Dbname & ";User Id=sa;Password=" & Sa & ";"
Debug.Print "Provider=sqloledb;Connect timeout=1;Data Source=" & ServerName & ";Initial Catalog=" & Dbname & ";User Id=sa;Password=" & Sa & ";"
Cn.Open
Else
Cn.Execute "select getdate()"
End If
Exit Sub
Errmsg:
MsgBox "数据库访问失败,请检查网络连接!", vbCritical, Err.Source

End Sub
这是debug出来的链接字符串:
Provider=sqloledb;Connect timeout=1;Data Source=192.168.249.157;Initial Catalog=con2018;User Id=sa;Password=******;
...全文
468 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
饮水需思源 2019-05-15
  • 打赏
  • 举报
回复
Connect timeout=1改成Connect timeout=0 试试
脆皮大雪糕 2019-01-31
  • 打赏
  • 举报
回复
服务器上是不是装了两个或两个以上SQL server 实例?
饮水需思源 2019-01-30
  • 打赏
  • 举报
回复
先在控制面板中做个odbc连接数据库试试通不通
ZHRXJR 2018-12-17
  • 打赏
  • 举报
回复

Set Cn = Nothing '还没有连接数据库,提前清除数据库连接对象,合理吗?
Cn.ConnectionString = "Provider=sqloledb;Connect timeout=1;Data Source=" & ServerName & ";Initial Catalog=" & Dbname & ";User Id=sa;Password=" & Sa & ";"
'这个语句中的几个变量的值在哪里, ServerName 服务器名称变量、 Dbname 数据库名称变量、 Sa 登录密码变量的值在哪里,如果没有值,肯定连接不上数据库。
Cn.Open

如果是本地连接,连接的是 ABCD 数据库,登录密码是 1234,连接SQL Server 2008 数据库语句应该是:
Cn.ConnectionString = "Provider=SQLOlEDB.1;persist security info=false;data source=.;user id=sa;Password=ABCD;initial catalog =1234"
VB业余爱好者 2018-12-17
  • 打赏
  • 举报
回复
SQL SERVER什么版本?

第一、先确认一下是不是网络问题,能否访问到192.168.249.157;

第二、确认是不是SQL SERVER的问题,你可以先打开你机器上的SQL Server Management Studio,服务器名称那里用IP,试试能不能连接,如果不能连接,可能是没有开启IP地址网络访问,在SQL Server配置管理器中将TCP/IP启用。
X-i-n 2018-12-14
  • 打赏
  • 举报
回复
ErrorNo, Err.Description是什么?开发阶段可以让异常直接提示出来,不需要捕获

1,216

社区成员

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

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