SQLSETPROP() 函 数
指定一个活动连接的设置
语 法
SQLSETPROP ( nConnectionHandle , cSetting [, eExpression ])
参 数 描 述
nConnectionHandle

由
SQLCONNECT ( ) 返 回 的 指 向 数 据 源 的 连 接 句 柄
cSetting

指
定 设 置 下 表 列 出 了 cSetting 的 值


设
置 说 明
Asynchronous 指定结果集合是同步返回 默认值为 假 (.F.)) 还是异步返回





(
真 (.T.) 可读写


BatchMode
指定 SQLEXEC ( ) 是一次返回全部结果集合 默认值为 真







(.T.)
还是用 SQLMORERESULTS ( ) 单个返回结果集合假 (.F.) 可读写







ConnectBusy
如果共享连接繁忙 为 真 (.T.) 否则为 假 (.F.) 只读

ConnectString
注册的连接字符串 只读






ConnectTimeOut
指定返回一个连接超时错误之前的等待时间
以秒计算
如 果指定为 0 默认值 将无限期等待 ,而不会返回超时错误ConnectTimeOut
可以是以 0 到 600 可读写

DataSource
和 ODBC.INI 文件中相同的数据源文件名 可读写
续 表



DispLogin
包含一个数值 决定什么时候显示 ODBC 注册 对话框
DispLogin
可以设定为下列值


或
DB_PROMPTCOMPLETE 在 FOXPRO.H 中定义 1 是默
认值
-


或DB_PROMPTALWAYS 在 FOXPRO.H 中定义
-


或DB_PROMPTNEVER 在 FOXPRO.H 中定义




如果指定为
1 或 DB_ PROMPTCOMPLETE 则当需要的信息未得到时 总是显示 ODBC 注册
对话框

如果指定为
2 或 DB_ PROMPTALWAYS 则总是显示 ODBC


注册
对话框 允许连接前更改设置

如果指定为
3 或 DB_ PROMPTNEVER 则不显示 ODBC 注



册
对话框并且当所需要的注册内容不可用时 Visual FoxPro 产生错误 可读写




DispWarnings
DispWarnings 指定要显示错误信息 真 (.T.) 还是不显示






错误信息
假 (.F.) 默认值 可 读 写






IdleTimeout
以秒计算的空闲超时间隔 在指定的时间间隔之后 活动的连接成为不活动的
默认值是 0 无限期等待 可读写


ODBChdbc
内部 ODBC 连接句柄 外部库文件 FLL 文件 在调用 ODBC 时

使用该句柄
只读




ODBChstmt
内部 ODBC 语句句柄 外部库文件 FLL 文件 在调用 ODBC 时使用该句柄 只读

PacketSize
连接所用的网络包的大小 调整该值可以改善性能 默认值是

4096
字节 (4K) 可读写

Password
连接密码 只读
续 表







QueryTimeOut
指定在返回一般超时错误之前等待的时间 以秒计算 如果指定为 0
将无限期等待而不会返回超时错误 QueryTimeOut 可以是 0 到 600 默认值是
15 可读写

Transactions
包含一个数值 该数值决定连接如何管理远程表上的事务处理
Transactions
可以设定为下列值

或
DB_TRANSAUTO 在 FOXPRO.H 中定义

.1
是默认值 自动处理远程表的事务


或
DB_TRANSMANUL 在 FOXPRO.H 中定义 通过

SQLCOMMIT
( ) 和 SQLROLLBACK( ). 人工处理事务 可读写

UserId
用户标识 只读
WaitTime 在 Visual FoxPro 检查 SQL 语句是否结束执行之前延迟的以毫秒


计的时间值
默认值是 100 毫秒 可读写
eExpression


对
cSetting 标 明 的 设 置 值 如 果 省 略 了 eExpression 参 数 则 还
原 成 默 认 值
返
值 类 型数值型 说 明




如果调用成功
SQLSETPROP ( ) 返回 1 否则 如果发生连接级错误则返回 -1
发生环境级错误则返回 -2


使用
SQLSETPRO P( ) 在连接级上指定设置 若要在环境级指定 Visual FoxPro
默认设置 用 0 作为连接句柄

ConnectTimeOut
选项只能在 Visual FoxPro 级上设置 而不能在连接级上使用 所有其


他选项既可在连接级
也可在 Visual FoxPro 级上进行设置 每个在 Visual FoxPro
级的设置作为随后连接的默认值
可用
SQLGETPRO P( ) 返回指定设置的当前值



注意
为了支持 Microsoft Transaction Server 的 SQL pass-through 功能 必 须
废 止 ODBC 登录对话框 使用 SQLSETPROP( cConnectionHandle ,
'DispLogin', 3) 可以废止 ODBC 登录对话框 cConnectionHandle 是
SQLCONNECT 返回的连接句


柄
也可以在连接设计器中废止 ODBC 登录对话框
示 例
用
SQLSETPROP( ) 为当前连接设置数据包大小
*清除环境 * CLOSE ALL CLEAR ALL CLEAR
-
显示选择的连接和数据源对话框
-
to choose a connection nHandle=SQLCONNECT()
*检测连接
报告结果
IF nHandle > 0
- Set PacketSize
nSet= SQLSETPROP (nHandle, "PacketSize", 2048 )
- Test 设置 and display results IF nSet > 0
=MESSAGEBOX("PacketSize was set to 2048",0,"Connection Results") ELSE
=MESSAGEBOX("Error Setting PacketSize",0,"Connection Results")
ENDIF ELSE
=MESSAGEBOX("No Connection",0,"Connection Results") ENDIF
=SQLDISCONNECT(nHandle)
请 参 阅
AERROR ( ), SQLGETPROP( )
