pg_exec
Prev | 4.3.Query Execution Commands | Next

## pg_exec

pg_exec — 中央集中処理装置上でSQL 命令を実行する Execute an SQL command on the server

## 構文 Synopsis

    pg_exec conn commandString ?param...?

## 説明 Description

pg_exec は命令を PostgreSQL 中央集中処理系に送り結果の把持子を返す｡追加の引数は命令文字列内の假引数の場所占有子に置換えて供給できる｡ `pg_exec` sends a command to the PostgreSQL server and returns a result handle. Optional arguments can be supplied to replace parameter place-holders in the command string.

## 引数 Arguments

`conn`

  そこで命令を実行する接続部の把持子｡ The handle of the connection on which to execute the command.

`commandString`

  実行すべき SQL 命令｡ The SQL command to execute.

`param...`

  命令文字列の場所占有子に束縛する零乃至それ以上の個数の假引数｡第一假引数は命令文字列内の $1 に､第二假引数は $2 に､置換える､それ以降も同様にする｡ 　 Zero or more parameter values to bind to command string place-holders. The first parameter will replace `$1` in the command string, the second parameter will replace `$2`, etc.

## 返り値 Return Value

命令の結果を得る為に pg_result と伴に使用できる結果把持子を返す｡ Returns a result handle which can be used with pg_result to obtain the results of the command.

データベースとの通信で不都合が生じると Tcl 不都合が発生される｡註意すべきは､､不適切な命令が成功裡に中央集中系に送られると不都合は発生されず､且つ､応答が成功裡に受理される｡通常の戻りの后､結果の宣言文が確認されねばならない｡ A Tcl error will be thrown if an error occurs communicating with the database. Note that no Tcl error will be thrown if an invalid command is successfully sent to the server and a response successfully received. The result status must be checked after a normal return.

## 註意 Notes

これを行った后には､`pg_result -clear` によって結果の把持子を解放することを確認せねばならない｡ Be sure to free the returned result handle with `pg_result -clear` when you are done with it.

pg_exec は COPY を始める為に使うこともできる､その後に応用譜は接続把持子から直接読出したり緒臆説書込んんだりする｡用例として第5.13節の“Example - COPY FROM and COPY TO”を参照されたい｡ `pg_exec` can be used to start a COPY, after which the application reads directly from or writes directly to the connection handle. See Section5.13, “Example - COPY FROM and COPY TO” for an example.

もし追加の引数が供給されると､この命令は平文書式の結果を伴う平文書式引数のみを提供する pg_exec_params の形式の簡略形になる｡この命令文字列は $1, $2, 等の場所占有子を含まねばならず､且つ､等しい数の引数でなければならない｡確認すべきは､ Tcl 変数置換を回避する為に SQL 命令文字列内の $1 の様な假引数場所占有子を波括弧や除外することを確認せねばならない｡この様な假引数の使用は､直接に命令文字列内に置換させるられる値の引用や除外の必要性を回避する｡ If optional arguments are supplied, this command becomes a simplified form of pg_exec_params, supporting only text-format arguments with a text-format result. The command string must include parameter place-holders `$1`, `$2`, etc. and an equal number of parameter arguments. Be sure to brace-quote or escape the parameter place-holders such as `$1` in the SQL command string to protect them from Tcl variable expansion. Use of these parameters avoids the need to quote and escape values which would otherwise have to be substituted directly into the command string.

媒介変数化された問合せに関する追加の引数を使うこの命令の形式は pgtclng-1.5.1 と pgintcl-2.1.0 に追加された｡ The form of this command using optional arguments for parameterized queries was added in pgtclng-1.5.1 and in pgintcl-2.1.0.

この命令は､追加の問合せ媒介変数引数なしで呼出すと PostgreSQL libpq 函数の PQexec を使う又は模擬し､又､追加の問合せ媒介変数引数を伴って呼出すと､函数 PQexecParams を使う又は模擬する｡ 　 This command uses or emulates the PostgreSQL libpq function `PQexec` if called without optional query parameter arguments, and the function `PQexecParams` if called with optional query parameter arguments.

Prev | Up | Next
4.3.Query Execution Commands | Home | pg_execute