QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5212|回复: 1
打印 上一主题 下一主题

SQL Server连接失败错误及解决

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-11-19 10:28 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
在使用 SQL Server 的过程中,用户遇到的最多的问题莫过于连接失败了。一般而言,有以下两种连接 SQL Server 的方式,一是利用 SQL Server 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP 脚本、VB程序等,客户端程序中又是利用 ODBC 或者 OLE DB 等连接 SQL Server。下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
, ~* p: D& W& E: {
4 `6 y4 C4 ^, \8 \/ _8 Z" H  一、客户端工具连接失败
; h2 E' V0 N$ h0 q5 {" `0 U5 s4 E8 l9 ~- v+ _- i
  在使用 SQL Server 自带的客户端工具(以企业管理器为例)连接 SQL Server时,最常见的错误有如下一些:
( g" {1 I$ f* k' _: q) p2 w4 H, }0 J8 `6 @/ R$ W1 g$ N
  1、SQL Server 不存在或访问被拒绝; y& B$ K* h: t1 Q+ T! `3 E. x* e
3 x! C# `* G5 O
    ConnectionOpen (Connect())0 H, W) s+ Y$ l; @0 ~! Q) c

9 T- t3 [# a/ V% P' ?  
( H- A) ~" d6 Y# b0 O6 L7 A' F
* y; ~2 I; Z6 z
. m2 Q7 R/ b7 ~) |: d% b& U. ~

- Y1 w( ?- h/ @6 D" c( k! F& S  2、用户'sa'登录失败。原因:未与信任 SQL Server 连接相关联。) `5 M, k) o! n* k% s

5 B7 f+ V; R& J, R. C  
! ~. K8 {9 [4 E: b) G9 ~/ u& @. H* T7 m

0 c6 y3 w  j5 C( A/ a0 f2 A& l0 F
4 S, ^7 f0 i5 E; B( C2 F6 ^! H! \; H
$ n- @+ [: y( A% b  3、超时已过期。
& J+ u1 Y4 b4 T) `% K9 C; g; J. M4 `- l) ~1 F  w& ^3 B: f
  
5 S- \+ S- s, v' Z' z5 o! L' ?% j3 w" E+ u

0 ^6 a- h: t  X- N" i  A下面我们依次介绍如何来解决这三个最常见的连接错误。( T3 Q" c6 D; P0 V* k) P

8 R' f( F' w/ h; F$ X2 D( f  第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性:
8 R7 q( ?" Z* U2 A7 y" O) n* D$ I4 i9 f; O; U* o' P; [* t
  1、SQL Server名称或IP地址拼写有误;( t3 U4 m0 N6 u# l# T1 S1 {

! C1 d6 S- B! H  2、服务器端网络配置有误;+ P1 U, q0 k9 P; a+ t
) z5 b: d7 L/ l8 `
  3、客户端网络配置有误。! U$ N! b' r0 o2 U- C% D  H: h6 B
: c5 `6 J( Z# T( }0 t% {4 x
  要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。+ t0 {' e3 F3 i. ^( _

% d% t  ?  j, d0 W  y1 d  首先,检查网络物理连接:
7 u0 b9 A& [' r7 I% d& h# u0 L: {
$ @5 F% S: J7 E/ d$ `+ m   ping <服务器IP地址>
4 a+ _! k- J/ v4 X5 g+ y8 } 
- |( {) x5 G9 {) h8 a+ x" p  或者
; P% y8 e- V1 A
6 u2 V; G( O- Y! q* N% Z   ping <服务器名称>
- v5 H8 O0 @5 z" E7 S5 Z! g
1 T& E1 x7 ^3 u% d5 e  如果 ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
8 T5 [  W4 p% N: K3 [0 B7 t" P! m* ?' n# ]( d
  如果ping <服务器IP地址> 成功而 ping <服务器名称> 失败,则说明名字解析有问题,这时候要检查 DNS 服务是否正常。有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:, B  M$ V+ q  I! ]) t

, G9 Q, ]1 i( Z7 |4 }1 w  1、使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc).: Z/ S4 P% b9 a5 b5 T5 f/ g
2 a; A2 C1 K) y0 E8 W
  2、添加一条IP地址与服务器名称的对应记录,如:
4 b: h3 \& h' D/ ~+ C, F( i, T7 y& p9 m5 k) o: c; j# n
    172.168.10.24 myserver3 B: ?% v9 z& i! e4 N

9 f* A' s3 U. K! O  也可以在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。$ h7 i, A4 i  Z7 j% L
9 J7 }. c4 G8 r
  其次,使用 telnet 命令检查SQL Server服务器工作状态:
; e0 {8 ^$ c4 L  ]. ?5 E
, U1 ^+ e. C$ z4 ?8 a1 f2 Q* h   telnet <服务器IP地址> 1433
# {4 z( J; k* c# G
* ^3 }6 I% c9 A  如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接;如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。
$ U8 ?* A* G; `, r$ t' D
( J- o" G" T9 J; Z) J3 e8 U1 r  接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道,是否启用了 TCP/IP 协议等等。我们可以利用 SQL Server 自带的服务器网络使用工具来进行检查。
( }5 d+ j  ^2 c2 A8 w) J% ^' W, j9 S) d
  点击:程序 -> Microsoft SQL Server -> 服务器网络使用工具,打开该工具后看到的画面如下图所示:: g* j+ y' L7 E

; H, Q) N; z# z) M2 M, m  4 n9 Y3 e+ E) h) W
7 r, a" O. r& T1 i

! I1 A+ a! D% A3 V  从这里我们可以看到服务器启用了哪些协议。一般而言,我们启用命名管道以及 TCP/IP 协议。# U/ U" W5 v! E, `- ]" ^
, y3 }3 i/ \0 o
  点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置,如下图所示:
  {0 f  m# S& `, v# A" I. s: I6 x8 l, S5 B: u: ^
  3 t4 T8 c& C! e" @$ h
3 n. ?( T$ J: J  n* @8 ^

8 b' w. G4 o5 g. R, C8 F
8 b% ?+ C6 M3 Y+ V( M3 i' K% Y1 h6 Q  l  ~0 [) W5 L
  一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。1 D: ^6 S0 t8 N- [7 j; D  F1 h
! T, v- p) ~# ^" ]+ f0 q9 {' d
  检查完了服务器端的网络配置,接下来我们要到客户端检查客户端的网络配置。我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具。
/ o* v6 s. o' t) O" ^& j1 K- s) j6 T1 e- C" Y; G+ F5 O
  点击:程序 -> Microsoft SQL Server -> 客户端网络使用工具, 打开该工具后看到的画面如下图所示:0 m0 W& C) T0 r! l; I
4 T2 I. W" v8 K$ _: p
  
/ W& R2 ]  q, s5 Q9 I3 _
3 }0 y; c  r. Y3 H! _
8 h5 P! k2 ]3 `* O" U, x& R  从这里我们可以看到客户端启用了哪些协议。一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。
6 `& r* _- m  ]6 X4 M
! s& y9 l# \& R* i6 q# H9 Z+ N6 p  点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,如下图所示。( N+ t! I; X6 N9 Z1 }

9 ]& T  X% E5 n4 V$ b  2 V' j( x5 R  c! G0 S

  r' y8 Z2 ~- _  H" B( q5 P. g
' K/ _2 i1 N3 q2 `4 V+ W  该端口必须与服务器一致。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同。如下图中,我们可以使用myserver来代替真正的服务器名称sql2kcn-02,并且使用网络库 Named Pipes。别名的设置与使用HOSTS文件有相似之处。$ \/ x. E5 m! t$ @1 D* Z/ b& Y
, S% }0 M5 e+ k/ m# g- J; Z
  2 K- d. `( o4 m8 R9 }
通过以上几个方面的检查,错误 1 发生的原因基本上可以被排除。下面我们再详细描述如何来解决错误 2。. x$ v) h' y& K4 ^$ o
$ Y/ v9 X( v4 R' H+ S
  当用户尝试在查询分析器里面使用sa来连接SQL Server,或者在企业管理器里面使用sa来新建一个SQL Server注册时,经常会遇到如图 2 所示的错误信息。该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:
* {0 ~9 k& h! H5 W
8 o( U  U* m/ r* E9 Y  1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server;' {, Z0 g4 {* [6 G( Y; W4 ]- ?6 ~

$ H  K' e( y+ S. [% J  2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;
- D" w5 |' a" J* H# }
9 l% h% |6 E* P- g5 T1 z, _  3、 在"身份验证"下,选择"SQL Server和 Windows "。
. Q7 E) c$ ^* i; l$ b) u: J2 }2 h( I7 ^9 D1 C* e9 v2 B
  4、 重新启动SQL Server服务。
& o# A/ c# g9 M% {8 U" h7 g
6 \2 J) w5 q0 U) U: l$ g4 X9 ~6 J# L1 ]  在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为"自己把自己锁在了门外",因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:8 L* Z8 ~7 {1 @3 Y/ p8 o

7 `+ M1 x2 w- S0 |; q  U* g, T  1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
$ E+ E; v" \9 o$ Q2 Z4 h" ^
2 j% y" P; p) X3 v( n5 ?( @  2、依次展开注册表项,浏览到以下注册表键:
& v2 U0 j6 A, a" `+ N) U" G! `! Y9 F) v0 C; X4 @7 g
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]& z) n* R* M- D- E$ ~. H

0 g. [8 Q' ~' ?* ~  3、在屏幕右方找到名称"LoginMode",双击编辑双字节值;2 ^0 l6 c. z+ M9 |

6 p/ }6 |2 O9 I  4、将原值从1改为2,点击"确定";4 z* h; I3 M4 S
8 p6 s# ]9 W! m. J1 c
  5、关闭注册表编辑器;
2 H0 o/ ]! K% E3 |' {# s7 v; D  P5 x1 ]* M+ w
  6、重新启动SQL Server服务。
1 a. Z: S' n5 |' P
2 {1 j9 @3 R3 J, D% w; S% `  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server。这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 被删除。要恢复这两个帐户,可以使用以下的方法:3 ~$ k0 E1 o, }- p

9 q, c& {5 e9 J0 U# i5 s5 [  1、打开企业管理器,展开服务器组,然后展开服务器;( D4 s3 g1 L7 @1 G% d

# ?9 K! L% \" B' Z# t% T  2、展开"安全性",右击"登录",然后单击"新建登录";  g. z3 z; h" H0 W+ k$ O8 Y

( y& r$ p$ b: y8 _, d  3、在"名称"框中,输入 BUILTIN\Administrators;( t7 D$ u( O8 p' F- o
! ]0 j2 A, c# C! \
  4、在"服务器角色"选项卡中,选择"System Administrators" ;9 {3 h# e; s1 w" q% ?( t
0 }) [4 a# b: f1 j6 B# D6 N
  5、点击"确定"退出;+ J4 K* E9 v4 t+ f6 u* P
  B' q0 p6 D2 `; p) n  @+ [9 g
  6、使用同样方法添加 <机器名>\Administrator 登录。
# ?. N, c# D. @# x% q  g# R
( y- D$ w8 J" s. k# s) G' i/ T" y  以下注册表键( {  N$ O* a" [, y

: g+ @5 i+ ~' N4 T- C) M" t: xHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
' Z) ~3 `1 j9 I9 N) ]7 q
2 B0 L" V. q% ~. F% h6 k+ B  的值决定了SQL Server将采取何种身份验证模式。该值为1,表示使用Windows 身份验证模式;该值为2,表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。6 \1 m* Z$ P! r9 t4 Y) n
! H: S8 v/ l6 d& a2 ~' p5 H7 W4 ^
  看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。3 _5 E5 A8 q& O3 ^( z

: ?) [' ^, t. o* x  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。
! z( J: x1 J2 S, q2 h8 C. s  c1 X6 d! R( c/ B; `
  要解决这样的错误,可以修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。具体步骤为:
$ Y9 Q% O+ B) z9 [# y7 `, N: N" z4 D* z
  1、在企业管理器中,选择菜单上的"工具",再选择"选项";, w1 U, w. U9 T; x' U8 J6 b

7 W" @9 N9 Z) {6 b% E  2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;: j8 S, Y* P9 P9 e
. [, T6 m- g1 U2 }7 q/ C* \
  3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。
, @6 i& s; ], ]& M4 e2 v) t
8 i8 @5 a  S! Q( x# P  K  查询分析器中也可以在同样位置进行设置。 <>) R, v$ ~" \' d! [6 T6 Y5 r0 \6 `: o
二、应用程序连接失败* K7 P3 Q5 F# a- N9 A; U
  [: m$ x* e& L  H2 \; I! b0 c6 k
  以上的三种错误信息都是发生在 SQL Server 自带的客户端工具中,在应用程序中我们也会遇到类似的错误信息,例如:
" l- ?7 _8 n& y) K& e* Q9 [" q# e  H6 a% n
Microsoft OLE DB Provider for SQL Server (0x80004005)
& a7 P3 `6 l+ N) I" e6 C[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.+ ^# A9 u# V4 }. G

! [1 a+ J- S! {; ]7 aMicrosoft OLE DB Provider for SQL Server (0x80004005)
- X' P) F6 `  k. |( x: Z, s* u用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
9 |& I% o' K; w( t# \( J
4 ]' W4 c  }# [! S. D' _7 aMicrosoft OLE DB Provider for ODBC Drivers 错误 '80004005'.
; ^; D/ h1 U; D9 X! l" o[Microsoft][ODBC SQL Server Driver]超时已过期.
5 i$ j% v6 B4 N2 M! f$ d4 u8 B* \! p  {! p0 p
  首先,让我们来详细看以下的示意图来了解一下使用 ODBC 和使用 OLE DB 连接 SQL Server 有什么不同之处。
- G, [' _, y, l, d& ?( R! t
$ ?% `$ N/ _8 `% j9 B. ^  
: v2 T7 d" b& D* \" O4 L6 @* Y* o# }7 }: g; r% K% V% [2 S
5 A- a* [) v" x* B  ]3 D
  从上图中,我们可以看出在实际使用中,应用程序创建和使用各种 ADO 对象,ADO 对象框架调用享用的 OLE DB 提供者。为了访问 SQL Server 数据库,OLE DB 提供了两种不同的方法:用于 SQL Server 的 OLE DB 提供者以及用于 ODBC 的 OLE DB 提供者。这两种不同的方法对应于两种不同的连接字符串,标准的连接字符串写法如下所示:
. ^6 l$ U( \) i
4 x7 y. q6 \0 U6 Q3 h  1、使用用于 SQL Server 的 OLE DB 提供者:+ p4 {. i  ^& P9 J' Q# q

  {1 L. x: @. s2 }9 ^& A$ w  使用 SQL Server 身份验证:" S3 B  M% F2 U  t1 M+ \, h

; L, o# p% o% E$ J  `6 a6 ]/ I( P2 soConn.Open "rovider=sqloledb;" &amp; _
( I" r; ^% B5 Y% s. t"Data Source=myServerName;" &amp; _7 J9 @6 C; w' M% W
"Initial Catalog=myDatabaseName;" &amp; _6 b8 g3 x1 E3 Z9 S! s$ ~
"User Id=myUsername;" &amp; _& p4 f- n' E- ^$ ?
"assword=myPassword"2 n6 G) h8 g6 w, ]- J4 T* P
% U0 ?8 Q* l+ l8 I. d% ]
  使用 Windows 身份验证(信任连接):- `# @5 K+ q5 }: ]* G
7 f! }! S- N' P8 i0 t
oConn.Open "rovider=sqloledb;" &amp; _
9 m, N" {& }" X% P1 g"Data Source=myServerName;" &amp; _
$ y$ _4 T2 t2 M& U2 D"Initial Catalog=myDatabaseName;" &amp; _8 z6 \; G* N, \3 N6 G
"Integrated Security=SSPI"
+ Z9 B4 X) P& s# T. G$ B, O8 g( S
0 o2 g5 \, _! X) d  2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 数据源):; w1 [: K- a) [: g
. c0 d! ]! r. Y! `& [% P3 D  W
  使用 SQL Server 身份验证:; N' a) f; o7 |+ c1 s3 G$ ~

; c& U: f9 L% i' J! MoConn.Open "Driver={SQL Server};" &amp; _
; m& K. R: u% Z2 }# e8 z7 y"Server=MyServerName;" &amp; _
* @+ i+ k, a3 F; _! t2 B1 p"Database=myDatabaseName;" &amp; _% h) [( P4 S+ Y2 b/ v5 F
"Uid=myUsername;" &amp; _) @2 O2 e7 n  L
"wd=myPassword"' l, @. G5 T# p" m. L% i6 B% R

' M2 ^" g1 a/ B4 j  使用 Windows 身份验证(信任连接):, y8 r% c1 L% g5 t8 p" d
3 b5 d/ {; X9 a
oConn.Open "Driver={SQL Server};" &amp; _
8 @$ y  y1 A! x3 i  I0 y/ U# r7 u"Server=MyServerName;" &amp; _
2 v2 V- j% H# W"Database=myDatabaseName;" &amp; _
, I# F5 y0 e$ @* m8 \4 B8 P; S"Trusted_Connection=yes"
; X( p8 J0 c+ z) u( E
. J$ L- s% c6 d  3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 数据源):
5 m5 D3 z* r* O/ u  a* M1 v
3 G1 ]$ ~9 K; VoConn.Open "DSN=mySystemDSN;" &amp; _
" Y" g7 T/ J; P! Q$ p' o7 [% l$ q"Uid=myUsername;" &amp; _ ' Z# d9 I4 J3 D% x
"wd=myPassword"
% k- E8 a5 r) i+ r# I: J0 W
0 R. V6 [' i! O  V: Y  如果遇到连接失败的情况,我们只要按照一中所示的方法,结合程序中的连接字符串进行检查,基本都能得到解决。另外,还有以下几个要注意的地方:; p1 B, h* m. P4 W

, R) S( O. R/ D2 g$ Y2 T  1、配置 ODBC 数据源时,点击"客户端"配置选项可以让我们指定连接使用的网络库、端口号等属性,如下图所示:- e& e3 \& `# {, S

! z5 g2 J) g1 v9 q) u/ L( ?  
0 l/ f6 `6 N4 F3 r. \3 @2 V% z  a1 H2 S; _9 _( T
1 J) C& ~. }7 f* S/ F

% u) T7 W7 N" r' T  2、如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如: 8 ^5 s4 p  s; x. ?: ^- X  D
6 p* V/ \2 U1 E3 y/ G
</P><>&lt;%# o; _* s$ |/ J! X' C+ E9 p, L
Set Conn = Server.CreateObject("ADODB.Connection")9 }* }( W$ P2 w* A0 @/ T
DSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USERWD=password;DATABASE=mydatabase"% C5 M5 ?1 @: M9 V$ P/ X
Conn. Properties("Connect Timeout") = 15 '以秒为单位
/ j# J; x2 h; w" w; R, I( VConn.open DSNtest
  B4 Q3 W. b& N9 X%&gt;</P><>
5 t1 B4 d: j1 P; n2 ~4 Q  3、如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:0 q" V1 `( P! r5 B& Q7 X

8 B, O/ @  B" }& p  W</P><>Dim cn As New ADODB.Connection
& A" _3 w, R5 VDim rs As ADODB.Recordset
' ?7 F5 ]% ?" P( t# b7 P. . .
, a# V% V0 R% B  A8 Ucmd1 = txtQuery.Text
" E+ a$ ~0 i9 M0 m' ^3 [* I* I; jSet rs = New ADODB.Recordset
( {& Z& A& A& ^" ~# W7 s+ `: N, Vrs.Properties("Command Time Out") = 300
5 h' J% e$ h" n8 C' X'同样以秒为单位,如果设置为 0 表示无限制
3 y8 p: S# m$ X! @rs.Open cmd1, cn
& `7 G  M: v" Vrs.MoveFirst& G7 A% t/ }. B# w7 {: q2 g
. . . </P><>
0 U! A7 o, T. W; W4 q! ~; W' s" j  <B>三、小结</B>4 ]- R" e% S; P0 G, Y3 `/ ?
9 b, |- S5 @; A! }& R. ~
  本文针对大部分用户在使用 SQL Server 过程中常见的连接失败的错误,重点讨论了在使用 SQL Server 客户端工具以及用户开发的应用程序两种情况下,如何诊断并解决连接失败的错误。看过本文以后,相信每一个读者都会对 SQL Server 的连接工作原理、身份验证方式以及应用程序开发等有一个较为全面而深入的连接。本文中所有的测试或者示例均在 Windows 2000 Advanced Server + SQL Server 2000 企业版上通过。</P>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-10-8 07:27 , Processed in 0.765322 second(s), 57 queries .

回顶部