QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4969|回复: 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。下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。2 Y, i) M" B+ |

$ O) m  ?; q' Q$ O  一、客户端工具连接失败
2 ~9 |( X) Y( i3 [$ U. A
. I! i  m1 {' R1 q* f  在使用 SQL Server 自带的客户端工具(以企业管理器为例)连接 SQL Server时,最常见的错误有如下一些:- |; D5 v, y: i( M
: f% \) a6 A9 l
  1、SQL Server 不存在或访问被拒绝6 U  X& }( n0 @( M1 ^

$ T4 d+ D- E$ a  l" Q/ _+ L9 L    ConnectionOpen (Connect()): s% Z, |* t9 f, F( [7 p- M$ |

; ~  q, r+ y$ j/ ]% X: Z* s0 g  + n: u! u0 l6 ?

4 K" [  a7 i3 ^9 c5 J, U3 ^' Y: A9 J/ @

  T* Y( m3 I, h3 U, C& @: d2 {* O( y) d3 m, T
  2、用户'sa'登录失败。原因:未与信任 SQL Server 连接相关联。
5 m# X6 g& _4 f6 n) K
* m" `8 Y/ i- ~& O7 _1 @  
3 k; f' @( k$ E  q4 d! G4 I5 Q% O8 F- S

& i- q8 Z( Q& {  Y. S( h. }, n4 w/ O" b" O- F, W
# _& p# L$ o3 `6 P$ C
  3、超时已过期。* E5 p3 p7 Y! y

& ~% P8 ?9 n& D3 U2 i  
; M$ Y) Q: J7 C$ {7 @
( @) E/ ]# C( b% T$ b2 i6 v) P. i  d! D0 Z
下面我们依次介绍如何来解决这三个最常见的连接错误。; N- F) F/ L6 Z
9 G+ M( }* g# |* ?
  第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性:
4 p. T% a0 G  u# A# R! x/ ^; D0 F* J( q4 n7 u' j- K2 B
  1、SQL Server名称或IP地址拼写有误;
  D& ~# A2 c1 {, B& k
& R0 U( R5 `" d0 {& d4 {  2、服务器端网络配置有误;$ S3 e) F" j3 F! z! f: r7 }0 F

- e; t+ K; X, l% R% j/ Z  3、客户端网络配置有误。
& m) |" x. _. P$ a3 N5 i; ?! O, A  }# ~
  要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。4 Z8 ?+ k9 Y+ C/ p% d
( Y" w5 W/ a4 X% k' I
  首先,检查网络物理连接:
* d. t& i  \8 i9 f% k% O/ s, l, {, M' U0 L# @& D% D1 J* p, m+ D
   ping <服务器IP地址>
$ I" D6 F& m% ^$ z' C ( g! u' I$ Q! r
  或者
" c% e; ]6 S& h( s7 Y, h  |$ ]
7 x- G/ s7 K- P7 C3 q( P2 a   ping <服务器名称>
& U8 H. m) ~9 }+ s. r0 @& j7 B  k7 [% c9 |# c' D' m& V
  如果 ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。: X* N! l7 t+ S9 N1 ~+ Y; G. M

( L9 l0 v5 Q6 M" @  如果ping <服务器IP地址> 成功而 ping <服务器名称> 失败,则说明名字解析有问题,这时候要检查 DNS 服务是否正常。有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:- W% `; ?/ t4 H6 o4 O- V/ T

7 n- g# R0 J& @) O  1、使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc).
6 z0 F! c0 b5 A+ h2 J, n( ~- ]' t0 i4 b4 K/ I+ u
  2、添加一条IP地址与服务器名称的对应记录,如:
/ k& g" n& v# q+ w# K
7 D7 j5 ~; B7 B3 h    172.168.10.24 myserver# x/ w5 q: K0 m
4 Q; F- \+ x- X+ H* U7 y. b
  也可以在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。
! z& A/ W2 ~+ O7 W& w% Y1 r1 L5 A  E$ u
  其次,使用 telnet 命令检查SQL Server服务器工作状态:
) N4 n  m# f4 W: T, p% {( K) I4 p. j; P- S3 O
   telnet <服务器IP地址> 1433
/ z2 o9 j( }! s9 @! ]# x+ M
6 F; h0 D! }0 Z. t  如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接;如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。$ f0 M& v  y% d

8 w  }* f9 U- y( Y7 J: x2 A  接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道,是否启用了 TCP/IP 协议等等。我们可以利用 SQL Server 自带的服务器网络使用工具来进行检查。0 n  g0 c+ S) g( F6 Q9 [

" T7 ~+ E$ |; `# K  点击:程序 -> Microsoft SQL Server -> 服务器网络使用工具,打开该工具后看到的画面如下图所示:
) q) j/ W6 _& Q8 k4 Q6 B
6 f/ U$ E; a# J" d  + p8 j  U% s- d: W+ c

6 V7 T* Z& Z: i! Z
) v/ X1 ^. X% x4 K  从这里我们可以看到服务器启用了哪些协议。一般而言,我们启用命名管道以及 TCP/IP 协议。& m2 V# K( j3 }1 s4 H
" r; H) f5 k* ]/ |6 s* m
  点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置,如下图所示:8 T& A  {' C; U

# Q/ j! H" P: Q1 [4 \8 x0 O- Z# Y! e  $ w; y8 w  u: M7 N3 K1 @. O

1 K1 U9 J5 c6 s' l
1 C! k) c2 w) Y7 J5 [) d; v1 {3 n5 Q( V2 B8 g$ _

. o+ x6 N! \, `% S# e  一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。
2 E) z& M/ ~, j" M
, U1 Y0 \% z2 y8 \: U+ w7 V  检查完了服务器端的网络配置,接下来我们要到客户端检查客户端的网络配置。我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具。- c  [3 T7 t4 k( o2 G. y1 O. Z

! r9 o& o8 A1 h) d+ q; y  点击:程序 -> Microsoft SQL Server -> 客户端网络使用工具, 打开该工具后看到的画面如下图所示:1 p* V% d  s4 v6 R3 s
, o5 t: y( P( D0 }6 f$ U2 F
  
. V7 R. G7 D4 ?9 I0 M. e! ~. Q1 ]) U0 }! x  B

, ^7 F) c% k  J& F3 T  从这里我们可以看到客户端启用了哪些协议。一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。' P1 J( Z: W$ n- A! z

" b' o( v: w6 @! ]+ q* a$ h  点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,如下图所示。( q2 N) j4 O+ K7 W2 b; g

7 i" b; M0 V' _" b( {, J  : e1 v8 z; k' n8 d% z8 [$ r

7 d+ a+ y  ?7 y# G1 M1 V
' j* l, V8 H+ G  该端口必须与服务器一致。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同。如下图中,我们可以使用myserver来代替真正的服务器名称sql2kcn-02,并且使用网络库 Named Pipes。别名的设置与使用HOSTS文件有相似之处。
" s2 F; L- {$ w3 @& F4 p+ N  P- W+ c- o- y
  $ I5 N& [  t% z
通过以上几个方面的检查,错误 1 发生的原因基本上可以被排除。下面我们再详细描述如何来解决错误 2。: z8 ]- t, Z/ U+ |! D
' M) s0 e, c3 d; K6 |
  当用户尝试在查询分析器里面使用sa来连接SQL Server,或者在企业管理器里面使用sa来新建一个SQL Server注册时,经常会遇到如图 2 所示的错误信息。该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:* `* Y+ _" F9 _' g  R

7 @1 y7 B" E& s  1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server;
7 A$ ?: e) p( @9 ^1 m; ~: |
/ B: Q5 W0 n/ \' {# {# K  2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;
/ q0 H" n- c; q, h- i3 u; P( ]- l! c; }: g( D
  3、 在"身份验证"下,选择"SQL Server和 Windows "。3 T3 @5 o( y- d0 u: L3 R  |
! Z5 m. p9 y5 [, ~! d5 ?; \( i! H
  4、 重新启动SQL Server服务。: C  S& d: `9 d, j8 ]. H
8 u5 R% x' o8 |1 G% K3 b; ?# \' ]
  在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为"自己把自己锁在了门外",因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:
' P/ [8 Y; V2 @6 ]7 n* ]0 p2 Z* E, z( w: B6 y  p/ j
  1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
" X0 `$ N& S: a' A' ?; e7 {
! V& o' F7 c3 u" @  2、依次展开注册表项,浏览到以下注册表键:: O; k- _2 @! t; S

* t% s/ v- T$ f3 f[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]: U9 e8 I# O) r; o5 y9 n5 Q* j& P

. a' m* b& ]! D. u$ E9 |1 w: F  3、在屏幕右方找到名称"LoginMode",双击编辑双字节值;
9 N2 E: ^2 l0 @- s% ]+ D' K1 }8 o+ k
  4、将原值从1改为2,点击"确定";
( ?# e2 e4 P) }
* C3 V. X0 e5 X: Y( v* V$ K  5、关闭注册表编辑器;
  j8 n4 E' s  c9 Z) t: ~! |- R5 A7 D3 g* f3 @" K" p
  6、重新启动SQL Server服务。2 r! }1 `3 {7 B4 p6 \$ V
+ x4 q( G2 _  T# T; L1 [
  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server。这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 被删除。要恢复这两个帐户,可以使用以下的方法:
" w7 d* e& o/ Q$ R
* K, S' z3 e+ p- y2 @  j  1、打开企业管理器,展开服务器组,然后展开服务器;/ J. Z0 _% L8 w

/ ?3 K# T$ x6 t7 M2 ]* r! ]  K. r  2、展开"安全性",右击"登录",然后单击"新建登录";
0 b5 V! ~/ P6 u3 t3 P$ h& B9 ]' l8 t% e/ c/ [1 O- l$ ?
  3、在"名称"框中,输入 BUILTIN\Administrators;
0 l2 S; E/ I9 a  ]+ [0 g1 q5 s. Z# u# b# I# p
  4、在"服务器角色"选项卡中,选择"System Administrators" ;
' w% W/ D* U5 B& L% K# c) B; I# k8 g- t3 a; f$ q
  5、点击"确定"退出;
+ \. o( v6 b3 f9 m( o9 x
. N1 U8 n' V4 i/ A; d  6、使用同样方法添加 <机器名>\Administrator 登录。
% o- n) M9 s8 _# d- ~
* z# J7 d: p! }# N5 L, u2 n  以下注册表键
4 R) C5 s/ v9 @
' q; e3 i0 Y; W# C2 |6 oHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode4 R6 z& d- |8 E& j2 w% W* o
2 i& [! s0 J) \4 v6 f
  的值决定了SQL Server将采取何种身份验证模式。该值为1,表示使用Windows 身份验证模式;该值为2,表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。
# c, T* r* o* b+ ^/ M( ~; Y$ q. t; U. k. t* I- d
  看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。
0 r+ p% `! y! V! z5 l2 A
& F  O8 A' A5 p2 `  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。
/ b+ {  v5 T  l) |0 h2 X
6 [% W0 D" a1 n1 H8 X  要解决这样的错误,可以修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。具体步骤为:
2 s* m7 L, @  r+ o  q. `
8 ^7 o6 B2 `, [4 U# ]3 Y8 h2 i$ A& R  1、在企业管理器中,选择菜单上的"工具",再选择"选项";
1 S+ i9 T8 ?2 S. D+ p0 {# X5 w* l
$ ?6 B& r& h7 j$ e# K. ?' Z% `; ~  2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;
# T0 y9 |: \+ n6 f( d- l/ Z0 k, f0 |6 L) d$ B. u
  3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。" s5 Z/ H6 c4 k  a3 D6 v. c* Y
& n& P& v+ W& c* s
  查询分析器中也可以在同样位置进行设置。 <>! q" F' N: a$ U8 T/ x! d$ i1 ?
二、应用程序连接失败
+ ?: a5 T* s6 m# \9 J( ^) N' T' X! q* b
  以上的三种错误信息都是发生在 SQL Server 自带的客户端工具中,在应用程序中我们也会遇到类似的错误信息,例如:) a+ ~% p& S$ U7 s
9 |4 G/ K; ]$ l$ l+ @. e
Microsoft OLE DB Provider for SQL Server (0x80004005)
+ Q' i! H2 d0 j6 h2 p) q[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.
! ]% u: n' H  S6 f! V! ~
: O6 P& }2 A: p4 G/ \2 eMicrosoft OLE DB Provider for SQL Server (0x80004005)
9 s0 v$ K" H; s( Y用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
" O* C' {% V) ?6 Q. q# \! ^+ Z# M7 j; T: i$ Y; g* ?* |- N  p
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'.# e( U  Q/ u, i* r- }& ]+ j
[Microsoft][ODBC SQL Server Driver]超时已过期.% l4 O6 Y7 M4 K# ]; g& {3 O! g) Z

6 U. N9 n3 v9 v7 d  首先,让我们来详细看以下的示意图来了解一下使用 ODBC 和使用 OLE DB 连接 SQL Server 有什么不同之处。
9 r+ Y3 i8 B2 `+ Z$ z: b. ]; u0 {+ J/ w- T1 y# u0 F% G* N: }
  
% `! a5 X) Q  e- q: J& w2 p2 Y- b1 i! S  X3 h) f/ o

0 u8 G2 N5 f% T5 S- N  从上图中,我们可以看出在实际使用中,应用程序创建和使用各种 ADO 对象,ADO 对象框架调用享用的 OLE DB 提供者。为了访问 SQL Server 数据库,OLE DB 提供了两种不同的方法:用于 SQL Server 的 OLE DB 提供者以及用于 ODBC 的 OLE DB 提供者。这两种不同的方法对应于两种不同的连接字符串,标准的连接字符串写法如下所示:
- E4 k/ K1 R# c$ F& o
3 |( d/ K: Z" L  1、使用用于 SQL Server 的 OLE DB 提供者:) K* b" a& K. d, F

5 B- }7 I, Q% C$ z, {" @3 f  使用 SQL Server 身份验证:
' L* {! L9 a- j4 d0 F& o8 i( _, I2 r; y  o: S7 G& O
oConn.Open "rovider=sqloledb;" &amp; _ * A) U# k9 T6 R; D% ^" M& k: ]. }
"Data Source=myServerName;" &amp; _9 A; k6 V7 e9 N* S% h& O1 K
"Initial Catalog=myDatabaseName;" &amp; _% c$ u( S% {/ y% y& V' o
"User Id=myUsername;" &amp; _5 N/ |) f6 E/ [0 q; k* v
"assword=myPassword"
6 b0 _1 T$ {& M! _& g: \0 V4 J* x- M$ S5 v  `# b
  使用 Windows 身份验证(信任连接):: G' K9 v8 f  n; ?/ P- m$ d
3 k( L6 `' H, j4 w  T1 J6 v6 ^$ R9 Y1 \
oConn.Open "rovider=sqloledb;" &amp; _8 C4 t8 p7 e/ A, z0 `6 ]+ I
"Data Source=myServerName;" &amp; _
) Y( W/ q# p# s* u2 O"Initial Catalog=myDatabaseName;" &amp; _+ v8 D. Q; r5 n3 N4 l
"Integrated Security=SSPI"
% Y7 z- s) |8 E" N6 d6 M9 u
0 x3 O$ s5 U8 w" d- b; l# v  2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 数据源):
* t$ {9 a$ ~8 h- J% b5 B* y4 l! y; m
3 w* d; T2 n+ r# l* V  使用 SQL Server 身份验证:
% I4 P3 `4 z/ T; \9 s/ Y
9 p" e. D6 f/ _& x( NoConn.Open "Driver={SQL Server};" &amp; _
6 Q9 c' m1 B# c" X8 F% P$ c1 ^! A0 Z"Server=MyServerName;" &amp; _
& D7 o  }8 W/ k$ ~: r: N( B" E; Y6 c"Database=myDatabaseName;" &amp; _+ K. V( ~! G% ]
"Uid=myUsername;" &amp; _
- p& g. e0 b' E5 V"wd=myPassword"& r7 \/ i1 b: X! E: B1 I, ]7 v
) H! i5 g7 k. c
  使用 Windows 身份验证(信任连接):9 U+ v6 k: ^# [- ^/ c0 t9 M# ?
4 g. r/ E8 a" O
oConn.Open "Driver={SQL Server};" &amp; _ 9 z1 T; [4 a- _; \# x/ M: L% ~' j
"Server=MyServerName;" &amp; _; d8 L4 u" Q1 Q4 M4 t" w/ l
"Database=myDatabaseName;" &amp; _  ]9 s( z6 n5 h  R- o$ d
"Trusted_Connection=yes"2 Y/ L$ V3 @* N5 j- C! k
5 P- N: `* y, s0 R: ]# Z
  3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 数据源):9 w' N: q7 E, [! G) Z# h% U& b
7 q9 o2 J) {0 \4 D0 L
oConn.Open "DSN=mySystemDSN;" &amp; _
$ W* w' F5 ?# \) r0 e"Uid=myUsername;" &amp; _
3 E! X2 j/ q2 P- U( T% L) ["wd=myPassword"' R, x6 u( I' J6 P/ m9 r

$ G5 P& {, ~/ F  如果遇到连接失败的情况,我们只要按照一中所示的方法,结合程序中的连接字符串进行检查,基本都能得到解决。另外,还有以下几个要注意的地方:
/ U7 g" P! F( ^! p, e
! \* l/ G# W$ S4 ~. ]0 D$ P  1、配置 ODBC 数据源时,点击"客户端"配置选项可以让我们指定连接使用的网络库、端口号等属性,如下图所示:. t& z$ l. a" S; g( U
, s" P  G% W: E. E9 r
  
$ y0 T0 P( N( P3 J3 r; J8 ~0 N* n  u* |
0 Y# d* D7 O% `6 @( _% j

& C4 \, v' Q( h$ t  2、如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如:
$ b* K9 k# v% o2 p0 ^$ ^( |+ b! W9 ]$ B! |% S
</P><>&lt;%1 y1 [, t% ?4 Z9 s! N1 e
Set Conn = Server.CreateObject("ADODB.Connection")
7 y, a' w. r# a! x7 V  a( vDSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USERWD=password;DATABASE=mydatabase"
" f: S$ z+ `' d" R1 T' ]  E, bConn. Properties("Connect Timeout") = 15 '以秒为单位
. K0 @, |, a: J9 C$ UConn.open DSNtest0 O# _% j7 _6 ]2 I. g2 L6 P" u
%&gt;</P><>
; j: }/ c7 D8 }$ u( y. v8 f: V4 g  3、如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:
7 U) b/ d- D' i( Q3 l& ?( Q
+ Z* h5 A/ V# t5 E2 V- F</P><>Dim cn As New ADODB.Connection7 R7 |1 l0 o# R4 _& r* K% B0 r9 c
Dim rs As ADODB.Recordset% L) ~$ w6 Q! X3 D8 F- E2 j7 o
. . . 9 n: R0 {+ u& o  Y* x6 q+ m
cmd1 = txtQuery.Text
+ _) J& L0 L- T% Z3 k/ LSet rs = New ADODB.Recordset! p9 z$ }8 P1 {3 Q5 b, D) P! \
rs.Properties("Command Time Out") = 300" s! `, k) Z, E
'同样以秒为单位,如果设置为 0 表示无限制9 L2 i; g5 g$ Q) R
rs.Open cmd1, cn
- A( Y# `2 y; `/ }rs.MoveFirst1 n2 `* k6 n& b( q
. . . </P><>
4 ^% B6 c, @: l! O2 A& \0 Y( U  <B>三、小结</B>
9 b+ u4 E! V& v' a+ w' b# b' }
' c* X6 _' ?8 o# L! q  本文针对大部分用户在使用 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, 2025-9-17 15:07 , Processed in 0.658737 second(s), 56 queries .

回顶部