点击或拖拽改变大小

Functions.SqlConnect 方法 (Int32)

X#
建立与数据源的连接。

命名空间:  XSharp.VFP
程序集:  XSharp.VFP (在 XSharp.VFP.dll 中) 版本:2.22 GA
语法
 FUNCTION SqlConnect(
	nStatementHandle AS LONG
) AS LONG
查看代码

参数

nStatementHandle
类型:Int32
这指定为由 nStatementHandle 表示的底层共享连接创建一个新的语句句柄。新的语句句柄使用 nStatementHandle 提供的设置,而不是使用默认设置。
您不能为未共享的连接创建新的语句句柄。

返回值

类型:Int32
数值数据类型。
如果成功连接到数据源,SqlConnect( ) 返回一个正的非零数值作为语句句柄。
如果无法建立连接,SqlConnect( ) 返回 -1。
您应将此语句句柄存储在内存变量中,并在需要连接句柄的后续函数调用中使用该变量。
备注
SqlConnect( )SqlStringConnect( ) 函数返回一个数值作为语句句柄,而不是连接句柄。
您不能直接获取连接句柄。您仍然可以使用 SqlSetProp( )SqlGetProp( ) 函数通过传递该连接的语句句柄和字符串 "Shared" 作为参数来设置和获取连接属性。所有其他 SQL 函数使用语句句柄而不是连接句柄。
如果您发出类似
X#
1SqlConnect(cConnectionName, .T.)
的语句,并且已经有一个具有相同名称的共享连接打开,则该连接的设置不会更改为数据库容器(DBC) 中存储的设置。
但是,新的语句句柄将使用 DBC 中的语句设置。
您必须禁用开放数据库连接 (ODBC) 登录对话框,以支持 Microsoft 事务服务器的 SQL 直通。
要禁用 ODBC 登录对话框,请使用语句
X#
1SqlSetProp(nStatementHandle, 'DispLogin', 3)
其中 cStatementHandle 是 SqlConnect( ) 返回的语句句柄。您还可以在连接设计器中禁用 ODBC 登录对话框。
示例
示例 1
以下示例假设存在并可用一个名为 MyFoxSQLNT 的 ODBC 数据源。SqlConnect( ) 返回一个数值,该数值存储在名为 gnConnHandle 的变量中。
如果您成功连接到数据源,SqlConnect( ) 返回一个正数,出现一个对话框,并调用 SqlDisconnect( ) 以断开与数据源的连接。
如果您无法连接到数据源,SqlConnect( ) 返回一个负数并显示一条消息。
X#
1STORE SqlConnect('MyFoxSQLNT', 'myUserID', 'myPassword') TO gnConnHandle
2
3IF gnConnHandle <= 0
4    = MessageBox('无法建立连接', 16, 'SQL 连接错误')
5ELSE
6    = MessageBox('连接已建立', 48, 'SQL 连接消息')
7    = SqlDisconnect(gnHandle)
8ENDIF
示例 2
以下每个示例都创建新的共享连接。出现选择数据源对话框,并且 SqlConnect( ) 将结果连接创建为共享连接。
X#
1SqlConnect(.T.)
2SqlConnect( myConnectionName, .T. )
3SqlConnect( myDataSourceName, myUserID, myPassword, .T. )
示例 3
以下每个示例都基于现有的共享连接创建一个新的语句句柄。
X#
1SqlConnect( nStatementHandleValue )
2SqlConnect( myConnectionName, .T. )
参见