&reftitle.constants; &extension.constants; Les constantes suivantes peuvent être passées à ibase_trans pour spécifier le comportement des transactions. Constantes Firebird/InterBase Constante Description IBASE_DEFAULT Définit le comportement par défaut. Ce comportement est déterminé par la bibliothèque cliente, qui est définie comme IBASE_WRITE|IBASE_CONCURRENCY|IBASE_WAIT dans la plupart des cas. IBASE_READ Démarre une transaction en lecture seul IBASE_WRITE Démarre une transaction en lecture / écriture IBASE_CONSISTENCY Démarre une transaction avec le niveau d'isolation définie à 'consistency', ce qui signifie que le transaction courante ne peut lire depuis des tables qui ont été modifiées par d'autres transactions. IBASE_CONCURRENCY Démarre une transaction avec le niveau d'isolation définie à 'concurrency' (ou 'snapshot'), ce qui signifie que la transaction peut accéder à toutes les tables, mais ne peut pas voir les modifications apportées par d'autres transactions une fois que la transaction a débuté. IBASE_COMMITTED Démarre une transaction avec le niveau d'isolation définie à 'read committed'. Ce flag doit être associé avec soit la constante IBASE_REC_VERSION, soit la constante IBASE_REC_NO_VERSION. Ce niveau d'isolation vous permet d'accéder aux modifications effectuées après le début de la transaction. Si la constante IBASE_REC_NO_VERSION est spécifiée, seulement la dernière version des lignes pourra être lue. Si la constante IBASE_REC_VERSION est spécifiée, une ligne peut toujours être lue lorsqu'une modification est en attente dans une transaction concurrente. IBASE_WAIT Indique que la transaction peut attendre, puis réessayer lorsqu'un conflit apparaît. IBASE_NOWAIT Indique que la transaction échouera immédiatement lorsqu'un conflit apparaît.
Les constantes suivantes peuvent être passées aux fonctions ibase_fetch_row, ibase_fetch_assoc ou ibase_fetch_object pour spécifier leurs comportements. Constantes Firebird/InterBase Constante Description IBASE_FETCH_BLOBS Aussi disponible sous le nom IBASE_TEXT pour des raisons de compatibilité ascendante. Permet de lire le contenu d'un BLOB "inline" au lieu de le parcourir en utilisant un identifiant de BLOB. IBASE_FETCH_ARRAYS Permet de lire un tableau "inline". Sinon, les identifiants de tableaux sont retournés. Les identifiants de tableaux ne peuvent être passés uniquement comme arguments aux requêtes INSERT, car aucune fonction pour traiter les identifiants de tableaux n'est actuellement disponible. IBASE_UNIXTIME Permet de retourner les champs date et heure non pas comme des chaînes de caractères mais comme des timestamps UNIX (le nombre de secondes depuis l'époque UNIX, qui est le 1-Jan-1970 0:00 UTC). Cela peut être problématique si vous utilisez des dates antérieures à 1970 sur quelques systèmes.
Les constantes suivantes sont utilisées pour passer des requêtes et des options à l'API (ibase_server_info, ibase_db_info, ibase_backup, ibase_restore et ibase_maintain_db). Merci de consulter le manuel Firebird/InterBase pour plus d'informations sur la significations de ces options. IBASE_BKP_IGNORE_CHECKSUMS Options pour ibase_backup IBASE_BKP_IGNORE_LIMBO Options pour ibase_backup IBASE_BKP_METADATA_ONLY Options pour ibase_backup IBASE_BKP_NO_GARBAGE_COLLECT Options pour ibase_backup IBASE_BKP_OLD_DESCRIPTIONS Options pour ibase_backup IBASE_BKP_NON_TRANSPORTABLE Options pour ibase_backup IBASE_BKP_CONVERT Options pour ibase_backup IBASE_RES_DEACTIVATE_IDX Options pour ibase_restore IBASE_RES_NO_SHADOW Options pour ibase_restore IBASE_RES_NO_VALIDITY Options pour ibase_restore IBASE_RES_ONE_AT_A_TIME Options pour ibase_restore IBASE_RES_REPLACE IBASE_RES_CREATE Options pour ibase_restore IBASE_RES_USE_ALL_SPACE Options pour ibase_restore IBASE_PRP_PAGE_BUFFERS IBASE_PRP_SWEEP_INTERVAL IBASE_PRP_SHUTDOWN_DB IBASE_PRP_DENY_NEW_TRANSACTIONS IBASE_PRP_DENY_NEW_ATTACHMENTS IBASE_PRP_RESERVE_SPACE IBASE_PRP_RES_USE_FULL IBASE_PRP_RES IBASE_PRP_WRITE_MODE IBASE_PRP_WM_ASYNC IBASE_PRP_WM_SYNC IBASE_PRP_ACCESS_MODE IBASE_PRP_AM_READONLY IBASE_PRP_AM_READWRITE IBASE_PRP_SET_SQL_DIALECT IBASE_PRP_ACTIVATE IBASE_PRP_DB_ONLINE IBASE_RPR_CHECK_DB IBASE_RPR_IGNORE_CHECKSUM IBASE_RPR_KILL_SHADOWS IBASE_RPR_MEND_DB IBASE_RPR_VALIDATE_DB IBASE_RPR_FULL IBASE_RPR_SWEEP_DB Options de ibase_maintain_db IBASE_STS_DATA_PAGES IBASE_STS_DB_LOG IBASE_STS_HDR_PAGES IBASE_STS_IDX_PAGES IBASE_STS_SYS_RELATIONS Options de ibase_db_info IBASE_SVC_SERVER_VERSION Options pour ibase_server_info IBASE_SVC_IMPLEMENTATION Options pour ibase_server_info IBASE_SVC_GET_ENV Options pour ibase_server_info IBASE_SVC_GET_ENV_LOCK IBASE_SVC_GET_ENV_MSG IBASE_SVC_USER_DBPATH IBASE_SVC_SVR_DB_INFO IBASE_SVC_GET_USERS Options pour ibase_server_info