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
...
(PHP 4, PHP 5)
sybase_affected_rows — Retourne le nombre de lignes affectées par la dernière requête Sybase
Cette fonction a été SUPPRIMÉE à partir de PHP 7.0.0.
$link_identifier
] ) : int
sybase_affected_rows() retourne le nombre de lignes
affectées par la dernière requête INSERT
,
UPDATE
ou DELETE
sur le serveur
associé à l'identifiant de connexion link_identifier
.
Cette commande ne sert à rien sur les requêtes SELECT : uniquement sur des requêtes qui modifient les lignes. Pour connaître le nombre de lignes retournées par un SELECT, utilisez sybase_num_rows().
link_identifier
Si l'identifiant de connexion n'est pas spécifié, la dernière connexion ouverte sera utilisée.
Retourne le nombre de lignes affectées, sous la forme d'un entier.
Exemple #1 Requête d'effacement
<?php
/* connexion à la base */
sybase_connect('SYBASE', '', '') or
die("Impossible de se connecter");
sybase_select_db("db");
sybase_query("DELETE FROM sometable WHERE id < 10");
printf("Nombre de lignes effacées : %d\n", sybase_affected_rows());
?>
L'exemple ci-dessus va afficher :
Nombre de lignes effacées : 10
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
...
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.