SQLCOLUMNS() 函 数
把指定数据源表的列名和关于每列的信息存储到一个
Visual FoxPro 临时表中
语 法
SQLCOLUMNS (nConnectionHandle,TableName
[, " FOXPRO" | "NATIVE"] [, CursorNam e])
返
值 类 型数值型 参 数 描 述
nConnectionHandle
活 动
的 连 接 句 柄
TableName






指
定 的 远 程 表 名 称 从 该 远 程 表 中 返 回 列 名 TableName 可 包 含
通 配 符和 * 可 代 替 任 意 单 个 字 符 * 可 代 替 任 意 个 字 符
FOXPRO | NATIVE
指 定
在 结 果 集 合 中 列 内 容 的 格 式 一 定 要 用 引 号 括 起 FOXPRO 或



NATIVE
NATIVE 格 式 选 项 使 用 数 据 源 格 式 存 储 表 的 列 内 容 FOXPRO
格式 选 项 使 用 V isual FoxPro 的 表 或 临 时 表 格 式 存 储 列 内 容
这 些 表 或 临 时 表 在将 数 据 源 表 导 入 V isual FoxPro 时 创 建 如
果 省 略 FOXPRO 或 NATIVE 参

数
格 式 选 项 的 缺 省 值 是 FOXPRO
下表显示了结果集合中的
FOXPRO 的列格式
列 名 说 明
Field_name 列名
Field_type 列数据类型
Field_len 列长度
Field_dec 小数位数



下表显示结果集合中具有
NATIVE 格式的列 在 NATIVE 格式中 依据数据源的不同
下表中没有列出的一些附加列可能会包含在结果集合中
列 名 说 明
Table_qualifier 表限定符标识
Table_owner 表拥有者标识
Table_name 表标识
Column_name 列标识Data_type 列数据类型Type_name
Precision 列的精度
Length 数据的传送大小
Scale 列的宽度
Radix 数值类型的基准
Nullable 是否支持 null 值
说明 列的说明






如果
TableName 指定的表不存在 同时格式设置成 NATIVE SQLCOLUMNS ( )
返回真(.T.) 并创建一个空的表或临时表 如果 TableName 指定的表不存在
并且格式设置成FOXPRO SQLCOLUMNS ( ) 返回假 (.F.)
CursorName


为
结 果 集 合 指 定 V isual FoxPro 临 时 表 的 名 称 如 果 不 指 定 临
时 表 名 V isual FoxPro 使 用 默 认 名 SQLRESULT
说 明














如果成功创建了临时表
SQLCOLUMN S( ) 返回 1 如果 SQLCOLUMNS( ) 仍在执行 返回 0
如果发生连接级错误 返回 -1 如果发生环境级错误 返 回 -2 SQLCOLUMN S( )
是四个既可同步执行也可异步执行的函数之一 SQLSETPROP( )
的异步设置决定这些函数是同步执行还是异步执行 异步方式下
必须重复调用SQLCOLUMNS( ) 直到返回一个非 假 (.F.) ( 仍在执行中 )
值为止
示 例



下面的示例假定已经成功地发出
SQLCONNEC T( ) 并且其返回值存入名为gnConnHandle 的变量中 SQLCOLUMNS( )
用来创建一个名为 M yCursor 的临时表该临时表包含 authors 表中列出的内容
= SQLCOLUMNS(gnConnHandle, 'authors', 'FOXPRO', 'MyCursor')
请 参 阅
AERROR ( ) , SQLGETPROP( ) , SQLSETPROP( ) , SQLTABLES( )
