cubrid_get_db_parameter
(PECL CUBRID >= 8.3.0)
cubrid_get_db_parameter — Повертає параметри бази даних CUBRID
Опис
cubrid_get_db_parameter(resource $conn_identifier): array
Функція повертає параметри бази даних CUBRID або false
у разі виникнення помилки. Повертається асоціативний масив із значеннями наступних параметрів:
PARAM_ISOLATION_LEVEL
PARAM_LOCK_TIMEOUT
PARAM_MAX_STRING_LENGTH
PARAM_AUTO_COMMIT
Параметри бази даних
Параметр | Опис |
---|---|
PARAM_ISOLATION_LEVEL | Рівень ізоляції транзакції. |
LOCK_TIMEOUT | CUBRID надає функцію часу очікування блокування, яка встановлює час очікування (у секундах) для блокування доти, доки не буде дозволено налаштування блокування транзакції. Значення за промовчанням для lock_timeout_in_secs дорівнює -1, що означає, що клієнт програми чекатиме нескінченно, поки блокування транзакції не буде дозволено. |
PARAM_AUTO_COMMIT | У CUBRID PHP режим автоматичної фіксації вимкнено за умовчанням для керування транзакціями. Його можна встановити за допомогою cubrid_set_autocommit() |
У наступній таблиці показані рівні ізоляції від 1 до 6. Вона складається зі схеми (рядка) таблиці та рівня ізоляції:
Рівні ізоляції, які підтримує CUBRID
Имя | Опис |
---|---|
SERIALIZABLE (6) | На цьому рівні ізоляції проблем, пов'язаних з паралелізмом (наприклад, брудне читання, неповторне читання, фантомне читання тощо) не виникає. |
REPEATABLE READ CLASS з REPEATABLE READ INSTANCES (5) | Інша транзакція T2 не може оновити схему таблиці A, поки транзакція T1 переглядає таблицю A. Транзакція T1 може відчувати фантомне читання для запису R, яка була вставлена іншою транзакцією T2, коли вона повторно отримує певний запис. |
REPEATABLE READ CLASS з READ COMMITTED INSTANCES (або CURSOR STABILITY) (4) | Інша транзакція T2 не може оновити схему таблиці A, поки транзакція T1 переглядає таблицю A. Транзакція T1 може відчувати читання R (неповторне читання), яке було оновлено та зафіксовано іншою транзакцією T2, коли вона повторно отримує запис R. |
REPEATABLE READ CLASS з READ UNCOMMITTED INSTANCES (3) | Рівень ізоляції за промовчанням. Інша транзакція T2 не може оновити схему таблиці A, доки транзакція T1 переглядає таблицю A. У транзакції T1 може відбутися читання R (брудне читання) для запису, який був оновлений, але не зафіксований іншою транзакцією T2. |
READ COMMITTED CLASS з READ COMMITTED INSTANCES (2) | Транзакція T1 може випробовувати читання A' (неповторюване читання) для таблиці, яка була оновлена та зафіксована іншою транзакцією T2, доки вона переглядає таблицю A кілька разів. Транзакція T1 може відчувати читання R' (неповторюване читання) для запису, яка була оновлена та зафіксована іншою транзакцією T2, доки вона повторно отримує запис R. |
READ COMMITTED CLASS з READ UNCOMMITTED INSTANCES (1) | Транзакція T1 може відчувати читання A' (неповторюване читання) для таблиці, яка була оновлена та зафіксована іншою транзакцією T2, в той час як вона багаторазово переглядає таблицю A. Транзакція T1 може відчувати читання R' (брудне читання) для запису, яка була але не зафіксована іншою транзакцією T2. |
Список параметрів
conn_identifier
З'єднання CUBRID. Якщо ідентифікатор з'єднання не вказано, передбачається останнє посилання, відкрите cubrid_connect()
Значення, що повертаються
Асоціативний масив з параметрами бази даних CUBRID у разі успішного виконання або **false
**в случае возникновения ошибки.
список змін
Версия | Опис |
---|---|
8.4.0 | В результаті змінився LOCK_TIMEOUT на PARAM_LOCK_TIMEOUT та MAX_STRING_LENGTH на PARAM_MAX_STRING_LENGTH. |
Приклади
Приклад #1 Приклад використання cubrid_get_db_parameter()****
Loading...
Результат виконання наведеного прикладу:
Версия CUBRID PHP: 9.1.0.0001
PARAM_ISOLATION_LEVEL 3
LOCK_TIMEOUT -1
MAX_STRING_LENGTH 1073741823
PARAM_AUTO_COMMIT 1
Информация о сервере: 9.1.0.0212
Информация о клиенте: 9.1.0
Кодировка CUBRID: iso8859-1
Дивіться також
- cubrid_set_db_parameter() - Встановлює параметри бази даних CUBRID
- cubrid_get_autocommit() - Повертає налаштування авто-комміту для з'єднання