历史版本。 PostgreSQL 7.4 已结束支持。 请参阅 当前版本手册.
大纲
pg_selectconncommandStringarrayVarprocedure
描述
pg_select 向
PostgreSQL 服务器提交一条查询(SELECT 语句),并对结果中的每一行执行给定的代码块。commandString 必须是一条
SELECT 语句;任何其他内容都会返回一个错误。arrayVar 变量是循环中使用的一个数组名。对于每一行,arrayVar 都会用该行的值填充,以列名作为数组下标。然后执行
procedure。
除了列值之外,数组中还会生成下列特殊条目:
.headers查询返回的列名的列表。
.numcols查询返回的列数。
.tupno当前行号,从零开始,循环体每迭代一次递增一次。
参数
conn要在其上执行查询的连接的句柄。
commandString要执行的 SQL 查询。
arrayVar用于返回行的数组变量。
procedure为每个返回的行运行的过程。
返回值
无
示例
这个例子假定表 table1 具有列 control 和 name(还可能有其他列):
pg_select $pgconn "SELECT * FROM table1;" array {
puts [format "%5d %s" $array(control) $array(name)]
}