QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5221|回复: 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 I2 J7 F2 s' Y8 T
7 [* X5 f) B/ Z/ @) G' S  一、客户端工具连接失败8 G$ D6 _4 g% Y  \( D. {' @% o
8 f8 e: L: @' p/ k# r: A- I3 y9 ?
  在使用 SQL Server 自带的客户端工具(以企业管理器为例)连接 SQL Server时,最常见的错误有如下一些:( y- c0 w5 i2 a

! `$ A; _( B: G; x$ Z  1、SQL Server 不存在或访问被拒绝, K( w5 O, Y* B7 ^. u' ~7 O) s
$ ?. w: f0 n( o2 p" c) ?
    ConnectionOpen (Connect())5 \* J  h+ j4 c3 w  M" n

6 {6 j( ]- V% Z/ e! V$ c  
: d0 A/ |, q1 A* A, K- K1 v/ U# l, j' P

8 x3 K( {6 c9 }7 m' J( w
7 E+ K& J' J# m  o/ j. S  ~! M  _* ]# V+ q" T$ v$ C1 `- {* F9 t
  2、用户'sa'登录失败。原因:未与信任 SQL Server 连接相关联。
5 p3 n: R/ c8 i- D$ X. B* b( Q/ a: J" O# A& Q9 o  r) ]: p
  
" j9 b3 y' [( b) k& Y: [9 a4 Q, l
- c! H6 ~4 N' S6 Y: v3 n3 ~! g' T0 g

: I' f  Y  y. l" p% T
& f! N* C2 u# F; V' I1 ?; p  3、超时已过期。& h9 i7 i; ~* E5 P! u  \

$ x! L* `4 q' e5 ?* W  r; ?   & x" t) a2 Z* M# @0 ^/ Q8 @
  R9 U# |, X" {6 N
1 a  O8 V: H& }, Q7 x: m; c0 G
下面我们依次介绍如何来解决这三个最常见的连接错误。
: ]  J. R" h" \0 E4 g0 V5 T( t" N) B1 [) l- h
  第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性:
3 V/ p# W& b! l7 L
& H% A1 A8 Z! ~- H+ Y  1、SQL Server名称或IP地址拼写有误;! d" y: \, c" Z: w: b$ v& A6 Y
9 C7 b0 Y0 D8 [! u1 O
  2、服务器端网络配置有误;
; ?$ v" ~8 h0 w) Q6 \/ I( F  {" ?3 B
: j& }& q) J3 q4 o: B, ?+ H" Z. S9 k4 k  3、客户端网络配置有误。
& p- q# e. ~( ^' F% H. {
% a' |7 ^; {) W0 v! f  要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。$ D  Z& i1 y$ s9 B3 I
3 S% J& ^! X6 y  Y& \  d# ^
  首先,检查网络物理连接:, S9 K, x/ A# L' G& l
! ]& a2 s8 J# i* C& m
   ping <服务器IP地址>
; o: [0 i, ?" S* ]# J 
+ o8 y) S9 C+ N- X+ P" A, _! ]  或者
$ s' P! Y2 X% [0 ^3 c3 X' O8 M  `/ r" m
   ping <服务器名称>& K- @. w, o" b

2 N8 S( G4 i- A0 i9 N2 [( a  如果 ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
/ B# K2 k" {/ M9 p+ A
4 w& H& m* p4 V5 U& O4 o, q  如果ping <服务器IP地址> 成功而 ping <服务器名称> 失败,则说明名字解析有问题,这时候要检查 DNS 服务是否正常。有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:3 ^* [9 R2 O# N1 m# T: K. R; t) U

6 a8 A+ C' v6 M: H/ d0 y8 x- y6 a  1、使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc).
* \9 v; [) K9 x9 f2 [3 V' H+ c) c3 o6 b/ t
  2、添加一条IP地址与服务器名称的对应记录,如:
& T. ?, N9 W0 [% M  B  D4 @0 x8 z+ P$ {% p, E) M
    172.168.10.24 myserver
; k$ f# z7 `. @" ~6 o! y
% q+ B, t8 \- J  也可以在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。
2 P9 C$ z. \4 \- A' N
, ?/ F: G, t; w% }4 J  其次,使用 telnet 命令检查SQL Server服务器工作状态:
7 @- k+ g+ _; q) K
- [1 \: ]5 A: S& Y% K   telnet <服务器IP地址> 1433
5 A  @. q0 }1 n9 F
4 q- ~4 T% O( n/ x) |- s+ L  如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接;如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。
7 J* U7 z# Q5 w0 q  Y/ h5 n5 ^5 M+ _
  接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道,是否启用了 TCP/IP 协议等等。我们可以利用 SQL Server 自带的服务器网络使用工具来进行检查。
$ i1 N' Y2 `" c1 w+ w, R
( n- B, X5 Q: Q, Y* a" f  点击:程序 -> Microsoft SQL Server -> 服务器网络使用工具,打开该工具后看到的画面如下图所示:
+ v6 O& |3 ?9 B, H: k7 k$ y6 a$ ~. ?$ L5 p5 ]5 w; H7 C
  
0 `0 F0 `; }7 ]  }! F
  d: p1 q# k' j9 S( u- U- a, m9 U7 u
  从这里我们可以看到服务器启用了哪些协议。一般而言,我们启用命名管道以及 TCP/IP 协议。
- G+ l4 n; D% B2 `, d
' e4 e2 Q# c9 w8 e8 y0 z: ?* ?' G$ V  点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置,如下图所示:
5 F. f+ r; I! ~/ l0 H1 b: b& L. p5 ]
  
( l8 w- a& t2 {* |: ^; c5 s, R' j- k. D3 f. [7 {2 \! V; V' A! f
1 P( |4 I$ T# e" @8 J
8 A: z  b7 x; O
% h1 C2 W# O8 `. `" j! F
  一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。
+ N& |3 L2 V% E: [
6 y- j8 f, R8 h, @  检查完了服务器端的网络配置,接下来我们要到客户端检查客户端的网络配置。我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具。
0 Q1 l7 O. h6 d* C  q7 E2 y' d) S& v! G7 g( Y0 C. Z) f7 b) B
  点击:程序 -> Microsoft SQL Server -> 客户端网络使用工具, 打开该工具后看到的画面如下图所示:8 a( ^, o1 Q0 @1 J, c$ Z6 h
# ?& L7 S" x/ A, Y) I0 f) B+ e
  $ k4 P$ e! A( {: H

' J) e# g5 n3 _) U; z0 n2 ?+ Q: f: j5 x
  从这里我们可以看到客户端启用了哪些协议。一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。
! @! e2 U6 |5 G* V3 W$ ~: ?
# o/ |/ d. H: d9 \! F8 e6 C3 E  点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,如下图所示。3 P8 o+ C: r6 R. c
- W. B# l. W) e& l. ?/ b5 t
  
5 |" D( T, h) L" c, W$ Y1 n0 N
4 F$ \$ z5 \, C
3 t  D3 L( e! Z7 K& j  该端口必须与服务器一致。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同。如下图中,我们可以使用myserver来代替真正的服务器名称sql2kcn-02,并且使用网络库 Named Pipes。别名的设置与使用HOSTS文件有相似之处。
1 N+ p) q6 d9 O' T5 E0 {9 x8 Z) w$ ~$ R5 b/ ^
  ) O$ G  y" b' m+ a" S+ [6 Y
通过以上几个方面的检查,错误 1 发生的原因基本上可以被排除。下面我们再详细描述如何来解决错误 2。
' K/ i! h) i0 U& h" ~7 v0 ?) C' [( E. z8 `7 x
  当用户尝试在查询分析器里面使用sa来连接SQL Server,或者在企业管理器里面使用sa来新建一个SQL Server注册时,经常会遇到如图 2 所示的错误信息。该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:- h; Z. O, p# T- l) [7 w

: r7 V! {/ T, H, M( V  1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server;' d5 T0 v+ L, r4 r

; E8 k) j4 r, i: B  2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;
$ h$ O) ?- s" y0 e% u, [' n$ x6 n% |; V7 ~  l* u
  3、 在"身份验证"下,选择"SQL Server和 Windows "。3 f/ l6 ?# l1 i' _) i& J

$ y- L6 E, u/ J6 E+ V3 m4 E. z; w  4、 重新启动SQL Server服务。& t( Q- A, q# \9 N- U/ S9 z

) G2 W; F" ]; @. i  在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为"自己把自己锁在了门外",因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:
1 A  o* }+ C1 d+ y, W% @7 K# D4 N' O
  1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
0 {2 r: [! T& G
5 |, m7 e  U! ?) x4 J  2、依次展开注册表项,浏览到以下注册表键:
1 \  @8 q+ [7 H; |! n% ?! u; f2 C) Y; I; _% i2 A1 t
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
  r1 b- s6 |# A; }+ n( }% b$ O) u/ K, j0 H' H6 P
  3、在屏幕右方找到名称"LoginMode",双击编辑双字节值;. C1 V7 R/ J+ k4 v0 O  h6 J- U. L, r
8 t' S2 o# L. s4 ]: i
  4、将原值从1改为2,点击"确定";2 T0 j; S# r: n3 w
9 L. e. s& k, \" p' B5 B
  5、关闭注册表编辑器;7 h) o  ?4 N* Z. {& l
/ e& [1 ^0 m" B- o& p# ]& i7 Z
  6、重新启动SQL Server服务。+ P8 x  u- K* d) s$ l9 w' L( D

% c0 [1 C: m+ j# J- u' \  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server。这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 被删除。要恢复这两个帐户,可以使用以下的方法:  R: L$ x/ y) `- K: a

8 s; @! j, J. N- Q2 Z9 Y: M  1、打开企业管理器,展开服务器组,然后展开服务器;8 u0 n6 B4 Q, w
* \* I8 B+ X' f% a& p) {
  2、展开"安全性",右击"登录",然后单击"新建登录";
, X; X+ _& s: j+ j% ?% @  w( U7 A0 Z& L5 h
  3、在"名称"框中,输入 BUILTIN\Administrators;
  p7 @, t0 I( ?; k4 U  W4 z0 F" p# B5 i4 |4 z9 K) S* Y
  4、在"服务器角色"选项卡中,选择"System Administrators" ;
# [' _2 u) [- F6 K
6 [* T( D! a% z7 O' p  5、点击"确定"退出;
4 h5 k6 a) t/ K" J! x- w) Y
( o% {- ]) d( B* l7 c# ]* G  6、使用同样方法添加 <机器名>\Administrator 登录。
$ Z/ ?0 `* D6 [* p* Q$ w" y
( G, ~- r( c* d# m3 C9 X% T! h  以下注册表键
: h4 N# V9 d* ~; Y
: W: y7 z# [4 c6 a0 E" LHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode' @9 o; N7 ~$ U, F3 [

# W& g9 ]/ O: o$ M5 C6 F- _& @' E  的值决定了SQL Server将采取何种身份验证模式。该值为1,表示使用Windows 身份验证模式;该值为2,表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。# p8 i' w1 f( `

( \7 w7 Q# h$ y5 g+ f8 k9 c9 g  看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。2 b: s! H& T  d3 R; m
7 ?' p1 V" i# K8 R& t
  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。
) v) u  c+ g& [# D' y5 U
  z0 S; I" V* l5 a* Z; S* V  要解决这样的错误,可以修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。具体步骤为:+ Y) |# F9 Y- ~: ?$ g2 N8 O. s# ?
  s" ~) D  _% d9 V) @  t, l( f
  1、在企业管理器中,选择菜单上的"工具",再选择"选项";
) l+ A7 W1 n8 H2 y, N* R
! @9 {! I* X. B) }- S  2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;' L4 E- U& i  G( D7 x) R

: ]! Q; }" \, M  3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。8 l. F- K% v9 b2 e$ e
' x* y. n3 C! C' X
  查询分析器中也可以在同样位置进行设置。 <>; s, k; _* M# [8 u! X( _
二、应用程序连接失败9 V8 C. I- q3 l3 F7 T

; _9 r: i7 m2 h8 B# o  以上的三种错误信息都是发生在 SQL Server 自带的客户端工具中,在应用程序中我们也会遇到类似的错误信息,例如:
9 T* p/ O4 F7 j' p. o; l( ^9 c1 U, k9 {' }4 \1 U
Microsoft OLE DB Provider for SQL Server (0x80004005)# a5 w" e, k/ U; ^  ]+ K% C
[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.
- f& h4 r5 @: d3 Z# ]& ?5 l* {4 U' U+ D4 m9 a
Microsoft OLE DB Provider for SQL Server (0x80004005)
8 L/ Z+ |- N& Y& ~; q* L0 u用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。: [- e, f; @" E1 _

8 V8 t" J8 M% iMicrosoft OLE DB Provider for ODBC Drivers 错误 '80004005'.
2 L3 B1 q' {4 Z# @. M' w[Microsoft][ODBC SQL Server Driver]超时已过期.
  Z$ c4 X( j3 w8 {! O6 {/ a6 j
  首先,让我们来详细看以下的示意图来了解一下使用 ODBC 和使用 OLE DB 连接 SQL Server 有什么不同之处。
8 p; h9 U) }+ T" V' O
5 q# X5 H2 R/ I6 T6 z2 z& \2 \   ) O0 P  g# w4 l1 Y. O, f

! {7 P5 n  A4 n# L& {; J6 ?2 e8 G+ s: L7 J
  从上图中,我们可以看出在实际使用中,应用程序创建和使用各种 ADO 对象,ADO 对象框架调用享用的 OLE DB 提供者。为了访问 SQL Server 数据库,OLE DB 提供了两种不同的方法:用于 SQL Server 的 OLE DB 提供者以及用于 ODBC 的 OLE DB 提供者。这两种不同的方法对应于两种不同的连接字符串,标准的连接字符串写法如下所示:8 v' E3 B$ U& E9 `0 N3 G2 z& X
; z7 U: w2 L8 Z3 M
  1、使用用于 SQL Server 的 OLE DB 提供者:
) S6 c' ], ~5 w$ Z
- b3 \2 }2 M* F5 T  使用 SQL Server 身份验证:* o/ _4 Y; b, @1 `( _' V0 C% d

9 m" B( X# @* [! z* voConn.Open "rovider=sqloledb;" &amp; _
2 U& m/ z1 K7 n: y# N0 M"Data Source=myServerName;" &amp; _3 b" }5 v; U$ g/ V1 a9 z: F$ a
"Initial Catalog=myDatabaseName;" &amp; _
$ c/ E3 B; U( C! U"User Id=myUsername;" &amp; _' o' e  w6 d  l3 O# s# q
"assword=myPassword"
+ z: N% \6 `6 l: d- Q; D% J
8 |7 `9 L* m% o4 T. F3 x$ C  使用 Windows 身份验证(信任连接):8 M. T; \  S! ~. i9 E
3 X5 `& H7 Z5 d$ B' Q, L7 Z$ X
oConn.Open "rovider=sqloledb;" &amp; _$ F% f# W% n$ q5 D/ {
"Data Source=myServerName;" &amp; _
( K3 R2 w, |% J) }3 L! F7 }0 m"Initial Catalog=myDatabaseName;" &amp; _  \! S0 N* p  W. q. Z' R
"Integrated Security=SSPI"9 V: V0 q( m; a( v8 O/ h
* Z$ L$ R" y! Q/ D9 N- P
  2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 数据源):, k- H6 w  Q; r# ]4 j% o; ^
( x+ M" L8 ^* e0 m: q: W2 ?* q
  使用 SQL Server 身份验证:5 J: n9 L5 X1 p- G' I# f2 [

4 |, p5 C. G: a9 T$ L" m6 eoConn.Open "Driver={SQL Server};" &amp; _ 9 K1 C8 h4 y! |3 H: S
"Server=MyServerName;" &amp; _0 j3 E! t* x2 ?! ~" h
"Database=myDatabaseName;" &amp; _
& I# X5 J4 I& i$ E8 E8 ^1 W- H"Uid=myUsername;" &amp; _
( Z$ T+ K3 K/ G: Y- D"wd=myPassword": k5 B2 v) B, Z; s- d3 C
& @  m, K" H0 {
  使用 Windows 身份验证(信任连接):
8 }0 q# D; g, d! h: G, H: S" d/ F2 D5 Q$ w# r: \: t) z- Y6 x$ ?
oConn.Open "Driver={SQL Server};" &amp; _ - s! ?- m  l" c4 _1 C. d3 Y' i
"Server=MyServerName;" &amp; _8 F! V6 y; d8 ^7 S% {/ r6 V; G1 n
"Database=myDatabaseName;" &amp; _6 p/ S  Y8 a/ }
"Trusted_Connection=yes"
8 |) ?4 ]4 f0 u) Y) I0 o
% }- X* v! g6 v# Q6 G; ]  3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 数据源):: [* _  e' ?% C8 v$ w, F9 m9 A
3 j! |5 f' u8 ~+ l, ?
oConn.Open "DSN=mySystemDSN;" &amp; _
" d- T, w7 z, A7 ^"Uid=myUsername;" &amp; _
) Z7 k6 j9 ]" j1 }! J. }7 C"wd=myPassword"7 [  t. f# K* ^+ M6 @) w% A4 @& A
0 Y5 ~1 z( C) I% T
  如果遇到连接失败的情况,我们只要按照一中所示的方法,结合程序中的连接字符串进行检查,基本都能得到解决。另外,还有以下几个要注意的地方:
2 _% A' ~& v! R8 j+ C$ ^0 k: b9 a2 D" t: z4 _9 ~
  1、配置 ODBC 数据源时,点击"客户端"配置选项可以让我们指定连接使用的网络库、端口号等属性,如下图所示:# M1 a- o9 c5 l0 F7 J. j6 T+ C
- R0 T4 F0 H5 {& Q+ d9 B% D) C
  
1 {# ]2 x; Z9 f! S7 G) B4 x
. S8 v! ^) S6 ]) P5 m& H1 r6 V" X1 r% N) W) p  s

% f+ ~% j) c& i# `  2、如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如:
$ m* _5 Z( l% O; u4 h5 ^/ _, G4 @) [9 A" c3 V2 y3 H2 Z! k
</P><>&lt;%( e( k) [" i1 u( ]- J& Y" [
Set Conn = Server.CreateObject("ADODB.Connection")0 l. ?" e2 h! z& H6 S3 Y
DSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USERWD=password;DATABASE=mydatabase"
" v5 P( W4 t- J* L$ L+ BConn. Properties("Connect Timeout") = 15 '以秒为单位
1 }* m; N" A. p; vConn.open DSNtest. K1 V, }3 S4 I$ Y
%&gt;</P><>; q+ ]) O# J0 Z/ m+ M
  3、如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:8 r2 H3 D. c" ?% a+ Y3 x6 ]

3 O; ?3 T1 q" e5 t+ h8 v</P><>Dim cn As New ADODB.Connection3 q. X' l: \; W  [. y
Dim rs As ADODB.Recordset
* e7 p2 W1 t' C+ e8 G9 j+ [9 v. . . . N# w4 M0 y* t! N0 F
cmd1 = txtQuery.Text
% t, \( o8 P) tSet rs = New ADODB.Recordset
; J. ]! O# |+ k$ P" U8 ~rs.Properties("Command Time Out") = 300) E% ~" y# D2 t; m7 j3 H
'同样以秒为单位,如果设置为 0 表示无限制* @3 B4 [& S5 W( j6 p! a
rs.Open cmd1, cn/ m1 b( e5 H/ J7 x7 V) Q( \
rs.MoveFirst
- G2 d/ U& T- \: D* \. D. . . </P><>4 y. f- ^- N( u( b; b* b( z
  <B>三、小结</B>! E! S& @' j$ ]0 C4 J0 Y

2 Q) L+ S6 H# k- Z  Z4 W, x, V  本文针对大部分用户在使用 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-9 10:42 , Processed in 0.350081 second(s), 56 queries .

回顶部