PHP: pg_affected_rows - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

pg_cancel_query PostgreSQL

Last updated: Sat, 27 Jan 2007

view this page in

# pg_affected_rows

(PHP 4 >= 4.2.0, PHP 5)

pg_affected_rows -- Returns number of affected records (tuples)

## Описание

int pg_affected_rows ( resource result )

pg_affected_rows() returns the number of tuples (instances/records/rows) affected by `INSERT`, `UPDATE`, and `DELETE` queries.

> Замечание: This function used to be called pg_cmdtuples().

## Список параметров

`result`

  PostgreSQL query result resource, returned by pg_query(), pg_query_params() or pg_execute() (among others).

## Возвращаемые значения

The number of rows affected by the query. If no tuple is affected, it will return 0.

## Примеры

Пример 1. pg_affected_rows() example

`<?php $result = pg_query($conn, "INSERT INTO authors VALUES ('Orwell', 2002, 'Animal Farm')"); $cmdtuples = pg_affected_rows($result); echo $cmdtuples . " tuples are affected.\n"; ?>`

Результат выполнения данного примера:

    1 tuples are affected.

## Смотрите также

pg_query()
pg_query_params()
pg_execute()
pg_num_rows()

add a note User Contributed Notes
pg_affected_rows
05-Aug-2005 03:31
`That's not quite true, I've been able to execute multiple queries in a single call just fine. In stead, it has to do with the fact this function returns the affected rows for the last executed query, not the last set of queries specified to a single call to pg_query.`
29-Jun-2005 06:15
`Concering Bruno Baguette's note:
The pg_query function only allows one query per function call. When you do your
$sql="BEGIN;
INSERT ...
COMMIT;";
$result=pg_query($conn,$sql);
echo pg_affected_rows($result);
you get a zero, because only the BEGIN; is executed.
The single query per call is, I beleive, a PHP builtin protection against SQL injection attacks. (Ie someone submitting a string paramter that ends the current query and appends another one)`
Bruno Baguette
28-Jun-2005 01:45
`Note that when you submit several SQL queries, within one BEGIN;COMMIT; like this one :
$SQLQuery = 'BEGIN;';
$SQLQuery.= 'INSERT INTO a (a,b) VALUES (1,2);';
$SQLQuery.= 'INSERT INTO b (ref_b,c) VALUES (2,5);';
$SQLQuery.= 'COMMIT;';
$HandleResults = pg_query($SQLQuery);
echo(pg_affected_rows($HandleResults));
pg_affected_rows() will return 0`
add a note
pg_cancel_query PostgreSQL

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 10:36:09 2007 PST