文字

sybase_affected_rows

(PHP 4, PHP 5)

sybase_affected_rowsGets number of affected rows in last query

说明

int sybase_affected_rows ([ resource $link_identifier ] )

sybase_affected_rows() returns the number of rows affected by the last INSERT, UPDATE or DELETE query on the server associated with the specified link identifier.

This command is not effective for SELECT statements, only on statements which modify records. To retrieve the number of rows returned from a SELECT, use sybase_num_rows() .

参数

link_identifier

If the link identifier isn't specified, the last opened link is assumed.

返回值

Returns the number of affected rows, as an integer.

范例

Example #1 Delete-Query

<?php

sybase_connect ( 'SYBASE' '' '' ) or
die(
"Could not connect" );
sybase_select_db ( "db" );

sybase_query ( "DELETE FROM sometable WHERE id < 10" );
printf ( "Records deleted: %d\n" sybase_affected_rows ());
?>

以上例程会输出:

Records deleted: 10

参见

  • sybase_num_rows() - Get number of rows in a result set

用户评论:

[#1] neugeypc at cox dot net [2002-05-31 11:24:33]

The sybase_affected_rows() function seems to work now with the Sybase DB Library.  Not sure when this improvement was made, but I'm currently running PHP 4.1.2 on Solaris.

Affected rows seems to return a -1 if the query syntax was incorrect on the last submitted query.
Affected rows returns 0 if no rows were affected or another error occured, such as a foreign key violation and also returns 0 if the query was successfully, but no records were affected by the query.
If the query was valid and did affect some rows, sybase_affected_rows() seems to be returning the correct number.

[#2] james at lasolas dot com [2000-03-21 18:25:50]

If you get a segfault with sybase-ct, add a en_US entry to your $SYBASE/locales/locales.dat file:

[linux]
locale = en_US, us_english, iso_1
...

上一篇: 下一篇: