QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5226|回复: 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。下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。1 x2 t6 t; X0 y5 ?
3 p+ N1 F. G  x- s. C: v
  一、客户端工具连接失败- B" ^  k$ f8 ]2 {& m
, d4 p! \" x) r2 `& l' n/ v  P
  在使用 SQL Server 自带的客户端工具(以企业管理器为例)连接 SQL Server时,最常见的错误有如下一些:
2 N& ^- Z2 x' e, u) P4 X" y
! d4 W7 P  Y/ S, b1 A- J" G  1、SQL Server 不存在或访问被拒绝) ~' x8 N/ l5 X2 h* ?0 K

4 ]5 H3 `+ {& P    ConnectionOpen (Connect())
$ U8 j  |- k: N2 J( Y; {0 @2 X1 E( C
  
- }/ R7 J* u* ]4 S6 C. D3 g/ ~7 O3 q, q3 ^$ E' F. b
! h$ f2 G1 N8 }' u, w- g

8 Z( Q0 R; I5 I2 x3 `" S. U% J& ?+ K0 u! D" s& X8 l
  2、用户'sa'登录失败。原因:未与信任 SQL Server 连接相关联。
; }6 w  i+ B1 G- Y$ i- L* a
) c9 `% y* U/ A9 B$ ]  
3 Q4 ]5 h. S/ }5 C7 g3 ?  x$ I& }6 `% g3 i

" q# I+ E! Q7 X/ H6 F& Z& v5 ]& N
% X" {7 p% X" `9 e0 c% N, ?& h
  3、超时已过期。
8 C4 ~, Q' C" Z% c0 H6 R5 C9 g; }  u0 u
   0 Z6 h% F$ U# K( R( N! @; g0 o/ f, d2 o

" U2 E, V0 L# g/ a$ }. W' C0 f8 f& u+ h% j& E1 X7 b
下面我们依次介绍如何来解决这三个最常见的连接错误。
+ b( K& u" z% a4 L' H0 ]( S! F- \& n1 E; B
  第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性:/ T2 W, T0 Z( {( \. }3 G
  U# ]. O$ _; ^, x4 b7 W9 d
  1、SQL Server名称或IP地址拼写有误;4 v  B7 I& K6 A5 g" I0 n  r; \& S

) x- y% v0 }& q* g  2、服务器端网络配置有误;! P. D% P1 L, w! O6 V

$ C& g" d$ o; ]2 r) ^  3、客户端网络配置有误。
3 W" }* F3 B# M9 P
9 Q" r; @) ?. o9 \/ [1 |  要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。7 T6 S% R, W, P0 Q8 j$ t% D' p6 l
: E. |1 f! B# n% g, r/ D
  首先,检查网络物理连接:' _/ W! P3 a) V' h' _6 h/ e& G

) \0 y. @" O( E+ X! W   ping <服务器IP地址> , ^( j5 r* t+ y" }! |0 @/ `- q
 
6 g) \$ a7 L9 j5 F& @  或者$ e+ [+ Q0 a6 s

+ T% `% S2 y; A8 r8 s   ping <服务器名称>4 m" Q+ \" L! e4 H0 ~" h
; ]4 }' _: L" {. w
  如果 ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
6 j. g$ N  E1 M( q  a. `9 u* G  ~" T* [1 Q' u/ e! F! F6 n
  如果ping <服务器IP地址> 成功而 ping <服务器名称> 失败,则说明名字解析有问题,这时候要检查 DNS 服务是否正常。有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:
  g( x" {& M7 V) G4 ]& ?3 d9 ^# h; n, H: @2 G3 _7 M2 ^
  1、使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc)., U  {1 s" |1 M+ N1 L7 J' J0 o

7 e, \7 _) a/ r; j9 Z  2、添加一条IP地址与服务器名称的对应记录,如:
$ V- ]* L3 H/ c$ Y$ d& `  U
. Q5 P9 ]9 I7 t4 Y9 B* g    172.168.10.24 myserver% p- q0 U; A) P9 B
( K+ o/ u1 s* P, w" Y' a2 W
  也可以在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。3 S6 F* C% d$ W+ n; i5 k. N. h
; a( v) t0 R2 e8 y* D
  其次,使用 telnet 命令检查SQL Server服务器工作状态:! e5 I4 \  M9 h$ I7 `; K7 Z  P
6 c% C8 @, N! C/ ~' _4 Q
   telnet <服务器IP地址> 1433
4 v6 o1 n: s# C# W4 H2 N3 {- M8 c0 B) B1 d
  如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接;如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。
* r. R" U$ D% x1 ~# T+ N7 h& h: P  h, Y% L8 Q) _. R
  接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道,是否启用了 TCP/IP 协议等等。我们可以利用 SQL Server 自带的服务器网络使用工具来进行检查。7 m2 M6 x( f: r" n! {. n) C0 C. W
! k% O! J& P, _; z
  点击:程序 -> Microsoft SQL Server -> 服务器网络使用工具,打开该工具后看到的画面如下图所示:  y8 U+ s  `6 Q: O+ R3 ~

) A$ b$ I- H; h0 ~# w6 v  
8 O. f  o% g) |! a7 P
1 y6 w( ?3 }# _/ Z: j  J; a) a" V1 ^8 q: O4 V# b6 N
  从这里我们可以看到服务器启用了哪些协议。一般而言,我们启用命名管道以及 TCP/IP 协议。
; s0 o! A/ }4 Z. |( e  h2 l/ L; b! M$ M: @
  点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置,如下图所示:
+ o1 n( P4 H) p2 u0 u5 l) Z
4 u. y" D; h9 h+ ?) c5 X, ?  
& ?+ L# }. _" f4 I" e* |: S4 [: M
$ v6 o4 i0 e; h/ n% ~! u% i7 e+ {

9 b2 F7 F2 L' w; `3 B& ^2 ?  y! [, m2 ^& w
  一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。, Q) I; E- |( Y" |# U' u
# j# y! r4 ~" M5 w, ]! g7 q6 h/ _
  检查完了服务器端的网络配置,接下来我们要到客户端检查客户端的网络配置。我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具。
  V( h7 l% l; M5 g
4 i5 P% m" A+ E  点击:程序 -> Microsoft SQL Server -> 客户端网络使用工具, 打开该工具后看到的画面如下图所示:
: f2 q4 o8 D9 ?2 ]8 l
0 I4 q0 Y" e& C' b    b$ u3 Y1 e5 I1 K9 B/ j$ i
( T  u0 I& V& k5 U* t2 n  }9 A
: I0 ?  F$ W. P7 O
  从这里我们可以看到客户端启用了哪些协议。一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。" ?  v2 r" c0 P# A, |

7 o4 u0 O+ F+ Z: W! s7 D  点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,如下图所示。
) d8 e4 j- t  p! G0 Z( F( A  j, x) f! y7 r& @
  
5 Q. `3 u3 G8 ]  d
& g% |/ Y( u* a. A' w% Q) r/ ~
/ r# ^6 s2 D2 O- Q0 p) L  该端口必须与服务器一致。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同。如下图中,我们可以使用myserver来代替真正的服务器名称sql2kcn-02,并且使用网络库 Named Pipes。别名的设置与使用HOSTS文件有相似之处。
' c) e6 [7 _7 L6 e# |+ l% ^
4 T, ^+ y, [. U' J* s! q  @  
$ w+ g8 {' c8 R' ]8 f& c通过以上几个方面的检查,错误 1 发生的原因基本上可以被排除。下面我们再详细描述如何来解决错误 2。
% ^$ }" t. L7 D& |, Q- X' g" Z9 C0 O6 |& O8 P7 `
  当用户尝试在查询分析器里面使用sa来连接SQL Server,或者在企业管理器里面使用sa来新建一个SQL Server注册时,经常会遇到如图 2 所示的错误信息。该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:
5 A1 k% ^2 c  S3 J
& i8 _  D/ G9 Q* X$ G) r1 g  1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server;
) y0 k) k& b: O6 F: |. U/ t- e; y9 M! a7 f, Q5 `# B8 E0 C  r, v* N& |
  2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;- ?, R  S9 v3 y) d% _! |2 N5 b6 L

$ j4 J; J  G# Q! |  3、 在"身份验证"下,选择"SQL Server和 Windows "。
1 }2 ~* J' W( c& o+ u
% A/ D% V. K# X4 ^; N" y. N  4、 重新启动SQL Server服务。
9 Q& ?4 O$ r; e0 h+ n. T+ n' v0 q" n6 R
  在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为"自己把自己锁在了门外",因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:. u/ Y( q1 k9 q. g9 e8 t

$ c6 E! I/ {- H9 u% g  1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
8 K, _' g6 V/ M. J+ }' E: K
+ X' a+ b- b' p6 ^+ `  2、依次展开注册表项,浏览到以下注册表键:9 r0 g& }, H/ f0 {7 H3 M
# `0 P( u0 o- m* N
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]6 W8 j0 r, ], e" ]) M  S# J
8 n! ?1 d. _7 F% v- U" \  t3 n
  3、在屏幕右方找到名称"LoginMode",双击编辑双字节值;
1 Q3 `# M* I9 g6 |) Y6 Z$ i# H+ S4 g; B" o! d) S% u& v* k
  4、将原值从1改为2,点击"确定";
1 W% n, L* Q* ]# V. F; P  G4 ~9 H' D9 D
  5、关闭注册表编辑器;5 C3 \  g, q' ^' K' b5 p

: D. X! l5 o% N! p  6、重新启动SQL Server服务。6 g+ E' s0 L& \' ]6 m* P8 T- z
6 c0 s* j0 j4 ]. w* l5 B4 E
  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server。这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 被删除。要恢复这两个帐户,可以使用以下的方法:
1 p+ B3 z- Q# ]- T0 `: S- r4 ?6 [' V0 O: M
  1、打开企业管理器,展开服务器组,然后展开服务器;
6 x& h7 E% X9 q
* y5 E" q" K& ^/ k5 F  2、展开"安全性",右击"登录",然后单击"新建登录";. k* l+ S0 [0 o, G  F2 Q  [/ m6 @

3 M& I, L  A; M+ R  3、在"名称"框中,输入 BUILTIN\Administrators;0 O, W7 t2 b) J) H6 c% \9 r
' C- x- `: F$ d6 K
  4、在"服务器角色"选项卡中,选择"System Administrators" ;8 g9 b; M# B3 X! Y1 ~' C
( ^& v9 ^9 J( ?
  5、点击"确定"退出;) q$ g+ ]* {/ X" i

1 }& p$ m$ T6 b! [5 q; M1 E0 f) m  6、使用同样方法添加 <机器名>\Administrator 登录。0 J+ T; X4 @* y9 x6 N+ x' `

4 a2 z  w$ ?7 y7 q& z  以下注册表键
' q7 y0 m5 i' ^5 H$ N3 b
5 y: r. H' `: r$ {7 B6 kHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
1 v2 Z) O- {- y2 L7 s" l6 Q# t
- o( G3 b$ s. l4 t7 p  的值决定了SQL Server将采取何种身份验证模式。该值为1,表示使用Windows 身份验证模式;该值为2,表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。) o6 g# F4 W: J  U

: [$ w# m. ]8 W& M. R8 n  看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。
6 `: Z+ J8 {% s( r4 l" b8 m# `: B' U) V% G& n8 C  o( r
  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。6 L: M! c% K' Y/ E; o& q% O! Q0 J

$ }# H  z$ V0 V  要解决这样的错误,可以修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。具体步骤为:5 j; r. I/ C9 r! [, ^2 q. K! n) L, r
6 g9 \; {( x2 ~* S( C
  1、在企业管理器中,选择菜单上的"工具",再选择"选项";
; z; p4 A  ^1 [: A4 X# k2 q* y) @" P( n7 s/ w- z3 l! H8 B4 Y/ V. }, Q. L
  2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;
4 ]8 `3 I% @  K1 |. O4 @  Q' V  n( l+ {4 _
  3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。
5 R' B* ^5 [8 f* l7 _: |: i% C3 o+ p- O3 h
  查询分析器中也可以在同样位置进行设置。 <>( U) J+ ]4 B4 R! {- M2 k  @
二、应用程序连接失败
* X( Q: Q4 H% h: n' @4 F# Z$ k) ]3 m9 v1 W+ C' U
  以上的三种错误信息都是发生在 SQL Server 自带的客户端工具中,在应用程序中我们也会遇到类似的错误信息,例如:
& F% B4 w( ]) p+ U
+ k% Z9 Q$ x2 n7 a9 u0 h1 cMicrosoft OLE DB Provider for SQL Server (0x80004005)
3 n  R3 l4 W" }; s[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.$ s9 t. m7 M% \% W, s* t
6 b% @! d+ `6 _
Microsoft OLE DB Provider for SQL Server (0x80004005)( w6 S  O9 q, l& Q$ l' o
用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
  O1 X) q: V$ V7 K$ j+ y9 |4 h6 R& G& o  h. r+ i
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'.5 v. x! D5 s4 f+ _
[Microsoft][ODBC SQL Server Driver]超时已过期.% w* t- U+ M5 H: U/ D

. E: y: M- q1 L$ ]+ F3 m  首先,让我们来详细看以下的示意图来了解一下使用 ODBC 和使用 OLE DB 连接 SQL Server 有什么不同之处。, [2 ?4 d1 S  R% e* U" X$ r

; D# a, C' o6 d. Q7 W' ]" {& C  
/ x8 {+ u3 _4 K: W5 _* i3 {
& n9 x. T* t, `* X+ `  H
' f. _, }( y$ G  从上图中,我们可以看出在实际使用中,应用程序创建和使用各种 ADO 对象,ADO 对象框架调用享用的 OLE DB 提供者。为了访问 SQL Server 数据库,OLE DB 提供了两种不同的方法:用于 SQL Server 的 OLE DB 提供者以及用于 ODBC 的 OLE DB 提供者。这两种不同的方法对应于两种不同的连接字符串,标准的连接字符串写法如下所示:
# J3 ~& J1 U0 N% P; C' |% p: \
( @+ F$ F* g. ^, r6 i# ~  1、使用用于 SQL Server 的 OLE DB 提供者:
5 o1 q! `& |) B" e9 F7 B9 S( ]) |
! @! i$ {' m- n+ ]4 d2 p  使用 SQL Server 身份验证:1 m4 O1 w. e, ^

, m. z$ |1 g6 b! ]; Z/ hoConn.Open "rovider=sqloledb;" &amp; _
5 J2 z" Z; W: U2 S; v"Data Source=myServerName;" &amp; _0 O5 [9 x; a. Q5 ]  z5 R/ m2 P! G
"Initial Catalog=myDatabaseName;" &amp; _
5 I2 m6 V! n2 z" P9 T! L"User Id=myUsername;" &amp; _$ U' j6 A6 G2 g
"assword=myPassword"8 Z( I. R& K. W: s6 J1 I; p( t; W

, b3 e& y# O9 o  使用 Windows 身份验证(信任连接):! V7 D5 _' K: g: V

6 B5 ?' V& g. Q" h+ ?oConn.Open "rovider=sqloledb;" &amp; _
) G5 \) ~, R9 e( D# P4 a2 @8 Q"Data Source=myServerName;" &amp; _* V/ ?9 E( D8 y% d
"Initial Catalog=myDatabaseName;" &amp; _
0 U1 J, k" I4 z% q3 M/ V"Integrated Security=SSPI"7 M8 N; _/ g$ S- e
: t% m) ?. o/ H; N# V
  2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 数据源):8 c, o. R) ~- _6 L! u) R
2 c( p0 r3 U% P/ n
  使用 SQL Server 身份验证:. A' ^2 r+ ^, o9 K" U5 z8 B

- L3 `, r  d+ roConn.Open "Driver={SQL Server};" &amp; _
7 A( d9 |0 z2 _/ U( d"Server=MyServerName;" &amp; _% p% X' u9 u( _* ]- I1 {: v
"Database=myDatabaseName;" &amp; _& T9 i! z  U; t& d
"Uid=myUsername;" &amp; _, T$ l$ y, v( G) p( f8 k
"wd=myPassword"
$ ~* H2 t' H2 w- d
# g7 t. y, T& S7 [9 U2 q# X  使用 Windows 身份验证(信任连接):# G$ ~: k# L- y5 X6 y  g

' @8 e' w$ Y7 m  AoConn.Open "Driver={SQL Server};" &amp; _ ! ?3 \5 ~& H4 J, o+ V
"Server=MyServerName;" &amp; _! y- O2 l2 V; j- H$ N' v( ]3 n# }
"Database=myDatabaseName;" &amp; _
4 u& y8 [1 I: {: n"Trusted_Connection=yes"
2 g4 H* D& B6 k. [1 E( x6 Q% I
, Y& t/ I/ t8 f$ C  3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 数据源):/ B: h7 i2 f2 m# T& F- t" Z
- O# Z% T8 r# d
oConn.Open "DSN=mySystemDSN;" &amp; _ , {9 u8 W) V4 _+ E  w1 j5 j( L, j
"Uid=myUsername;" &amp; _ * D% W8 T8 i. L9 e7 ?
"wd=myPassword"& v; C) Z4 ^# }& g2 L

" ^! `" p8 ]/ }, a/ G3 [3 v  如果遇到连接失败的情况,我们只要按照一中所示的方法,结合程序中的连接字符串进行检查,基本都能得到解决。另外,还有以下几个要注意的地方:4 W0 a) `; B& N

; p, z* Z3 o$ O# f4 B' K! j# t  1、配置 ODBC 数据源时,点击"客户端"配置选项可以让我们指定连接使用的网络库、端口号等属性,如下图所示:- l& c5 \9 }% r
! q. a/ M  X- a2 ]3 U9 }
   6 f2 y0 q4 f7 a) Y; y2 f' f3 h6 I
8 O' `) F1 K: t! h  i1 ^& O( s

8 l; d6 Y6 d" I$ B, m: c6 D" ^, n* q$ k. N" L
  2、如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如:
% [1 s- v& A6 X+ \% G. x1 U+ S  k" x2 p" v( X2 C# U
</P><>&lt;%
0 Y$ Y3 O2 z+ ZSet Conn = Server.CreateObject("ADODB.Connection")
& s: I! M% _- J9 x: R/ wDSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USERWD=password;DATABASE=mydatabase"
' y1 N) r( ]7 {+ A: Y1 \& D! |4 n8 G& cConn. Properties("Connect Timeout") = 15 '以秒为单位: L: r! V! S; Z; i. j
Conn.open DSNtest
- G7 J5 B3 r7 y' L%&gt;</P><>5 U: ^' }! V% d
  3、如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:
: n* l1 X/ q0 b% e- M! ^4 N+ U1 _! S4 }
</P><>Dim cn As New ADODB.Connection
% [5 }* K3 V* v" w: l$ ?- b' eDim rs As ADODB.Recordset' B: m1 w% }; X& @& n8 a- ]% o
. . . 6 {$ Q  W+ P+ X6 |) T
cmd1 = txtQuery.Text
) }0 R: ?: l4 W  v) uSet rs = New ADODB.Recordset
% S- B$ E* e7 Krs.Properties("Command Time Out") = 300
9 U5 d/ W& _: A+ Z+ ^  N# q6 \'同样以秒为单位,如果设置为 0 表示无限制, y# M( ~$ D9 S
rs.Open cmd1, cn! c5 r5 o. W( O# C( C6 ^
rs.MoveFirst7 }; V. P  a& n* E; C* m0 N# L5 P/ B. @
. . . </P><>" F0 L5 |' k4 a+ K! ~
  <B>三、小结</B>
( B8 y" d2 `/ J) |
$ J: L; Q" b" f; u  本文针对大部分用户在使用 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-15 08:46 , Processed in 0.438247 second(s), 57 queries .

回顶部