Functions.SqlStringConnect 方法 (String, Boolean) | |
使用连接字符串建立与数据源的连接。
命名空间:
XSharp.VFP
程序集:
XSharp.VFP (在 XSharp.VFP.dll 中) 版本:2.22 GA
语法 FUNCTION SqlStringConnect(
cConnectString AS STRING,
lShared AS LOGIC
) AS LONG
public static int SqlStringConnect(
string cConnectString,
bool lShared
)
查看代码参数
- cConnectString
- 类型:String
这指定了 Ado.Net 连接对象所需的数据源连接字符串。
X#将连接字符串传递给 Ado.Net DBConnect 对象。有关数据源连接字符串的更多信息, 请参阅您的 Ado.Net 文档。
您还可以从选择连接或数据源对话框中选择一个数据源,当您使用空连接字符串调用 SqlStringConnect( ) 时,或者通过传递只带有 lShared 参数的重载。
- lShared
- 类型:Boolean
指定使用 cConnectString 指定的数据源是否具有共享连接。True (.T.) = 共享,False (.F.) = 独占,这是默认值。
指定将要打开的数据源是否应该是共享的。True (.T.) = 共享,False (.F.) = 独占,这是默认值。
返回值
类型:
Int32
数值型。
如果成功连接到数据源,
SqlStringConnect( ) 返回一个正的非零数值作为语句句柄。
如果无法建立连接,
SqlStringConnect( ) 返回 -1。
您应该将这个语句句柄存储在一个内存变量中,并在后续需要连接句柄的函数调用中使用这个变量。
备注 SqlConnect( ) 和 SqlStringConnect( ) 函数返回一个数值作为语句句柄,而不是一个连接句柄。
您不能直接获取连接句柄。您仍然可以使用 SqlSetProp( ) 和 SqlGetProp( ) 函数设置和获取连接属性,
只需将该连接的语句句柄和字符串 "Shared" 作为参数传递给这些函数。
所有其他的 SQL 函数都使用语句句柄,而不是连接句柄。
SqlStringConnect( ) 在成功建立连接时总是创建一个新的连接。 但是,通过设置 lShared 参数,您可以确定以后是否可以共享这个连接。
如果您将 lShared 设置为 True(.T.), 您可以在以后调用 SqlConnect( ) 并将连接句柄的数值作为第一个参数传递,从而共享这个连接。
有关更多信息,请参见 SqlConnect( ) 函数。
您可以使用 SqlConnect( ) 在使用 SqlStringConnect( ) 打开的共享连接上获取一个新的语句句柄。
示例 示例 1
以下示例假设存在一个名为 MyFoxSQLNT 的 ODBC 数据源,并且该数据源可用。
SqlStringConnect( ) 返回一个数值,该数值存储在一个名为
gnHandle 的变量中。
如果成功连接到数据源,
SqlStringConnect( ) 返回一个正的数值,会显示一个对话框,然后调用
SqlDisconnect( ) 以断开与数据源的连接。
如果无法连接到数据源,
SqlStringConnect( ) 返回一个负的数值,并显示一个消息。
1STORE SqlStringConnect('dsn=MyFoxSQLNT;uid=myUserID;pwd=myPassword') TO gnConnHandle
2
3IF gnConnHandle < 0
4 = MessageBox('无法建立连接', 16, 'SQL 连接错误')
5ELSE
6 = MessageBox('连接已建立', 48, 'SQL 连接消息')
7 = SqlDisconnect(gnHandle)
8ENDIF
示例 2
以下示例展示了如何在没有数据源名称 (DSN) 的情况下使用
SqlStringConnect( ) 函数。
1lcDSNLess="driver = SQL Server;server=<servername>;uid=<userid>;pwd=<password>"
-或者-
1lcDSNLess="driver = {SQL Server};server=<servername>;uid=<userid>;pwd=<password>"
-或者-
1lcDSNLess="DRIVER = {SQL Server};" ;
2 + "SERVER=<servername>;" ;
3 + "UID=<userid>;" ;
4 + "PWD=<password>;" ;
5 + "Database=PUBS;" ;
6 + "WSID=<machine name or userid>;" ;
7 + "APP=MicroX(R) Sample App"
8lnConnHandle=SqlStringConnect(m.lcDSNLess)
示例 3
以下每个示例都创建一个新的共享连接。在第一条语句中,选择连接或数据源对话框会出现,
SqlStringConnect( ) 会将生成的连接设置为共享。
1SqlStringConnect(.T.)
2SqlStringConnect('myConnectionString', .T.)
参见