Poniższe stałe są zdefiniowane w tym rozszerzeniu i stają się dostępne, gdy rozszerzenie jest dokompilowane do PHP, lub załadowane dynamicznie przy starcie.
Następujące stałe mogą być przekazane do ibase_trans() w celu określenia zachowania transakcji.
Stała | Opis |
---|---|
IBASE_DEFAULT | Standardowe ustawienia transakcji. Domyślnie są one określone przez bibliotekę klienta, w większości przypadków następująco: IBASE_WRITE|IBASE_CONCURRENCY|IBASE_WAIT . |
IBASE_READ | Rozpoczyna transakcję w trybie tylko do odczytu. |
IBASE_WRITE | Rozpoczyna transakcję w trybie odczytu i zapisu. |
IBASE_CONSISTENCY | Rozpoczyna transakcję na poziomie izolacji ustawionym jako 'spójny', który oznacza że transakcja nie może czytać z tabel będących w trakcie modyfikacji przez równoległe transakcje. |
IBASE_CONCURRENCY | Rozpoczyna transakcję na poziomie izolacji ustawionym jako 'współbieżny' (lub 'migawka'), który oznacza że transakcja ma dostęp do wszystkich tabel, ale nie widzi żadnych zmian zatwierdzonych w międzyczasie przez równoległe transakcje. |
IBASE_COMMITTED | Rozpoczyna transakcję na poziomie izolacji ustawionym jako 'odczyt zatwierdzony'. Ta flaga powinna być połączona jedną z dwóch: IBASE_REC_VERSION lub IBASE_REC_NO_VERSION. Ten poziom izolacji pozwala uzyskać dostęp do zmian zatwierdzonych w międzyczasie przez inne transakcje. W połączeniu z IBASE_REC_NO_VERSION może być odczytana tylko ostatnia wartość wiersza. W połączeniu z IBASE_REC_VERSION może być zawsze odczytana aktualna wartość wiersza po zmodyfikowaniu jej przez równoległe transakcję. |
IBASE_WAIT | Oznacza, że transakcja powinna czekać i ponawiać próbę w momencie wystąpienia konfliktu. |
IBASE_NOWAIT | Oznacza, że transakcja powinna natychmiast zwrócić błąd w momencie wystąpienia konfliktu. |
Następujące stałe mogą być przekazane do ibase_fetch_row(), ibase_fetch_assoc() lub ibase_fetch_object() w celu określenia zachowania tych funkcji podczas pobierania wierszy.
Stała | Opis |
---|---|
IBASE_FETCH_BLOBS | Równoważna z IBASE_TEXT w celu zachowania zgodności z poprzednimi wersjami. Powoduje pobranie zawartości BLOBa, zamiast zwrócenia identyfikatora BLOBa. |
IBASE_FETCH_ARRAYS | Powoduje pobieranie tablic. W przeciwnym wypadku są zwracane identyfikatory tablic. Identyfikatory tablic mogą być używane tylko jako argumenty dla operacji INSERT, gdyż obecnie nie ma odpowiednich funkcji do ich obsługiwania. |
IBASE_UNIXTIME | Powoduje że pola data i czas nie są zwracane w postaci sformatowanych łańcuchów, lecz jako unixowy znacznik czasu (liczba sekund, która upłynęła od początku epoki Uniksa, datowanej na 1 stycznia 1970 0:00 GTM). W niektórych systemach może to stanowić problem, w momencie gdy zostaną użyte daty sprzed 1970 r. |
Następujące stałe przekazują żądania i opcje do funkcji usługi API (ibase_server_info(), ibase_db_info(), ibase_backup(), ibase_restore() i ibase_maintain_db()). Prosimy odnieść się do dokumentacji Firebird/InterBase żeby zapoznać się ze znaczeniem tych opcji.