1
1
Fork 0
This commit is contained in:
Alexey 2019-03-24 02:55:50 +03:00 committed by GitHub
parent f114c6f163
commit 9320409c40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 4 deletions

13
jdbc.md
View File

@ -61,7 +61,7 @@ JDBC превращает вызовы уровня API в «родные» ко
+ `java.sql.Connection` - обеспечивает формирование запросов к источнику данных и управление транзакциями. Также предусмотрены интерфейсы `javax.sql.PooledConnection` и `javax.sql.XAConnection`.
+ `java.sql.Statement` , `java.sql.PreparedStatement` и `java.sql.CallableStatenient` - эти интерфейсы позволяют отправить запрос к источнику данных.
+ `java.sql.Statement` , `java.sql.PreparedStatement` и `java.sql.CallableStatement` - эти интерфейсы позволяют отправить запрос к источнику данных.
+ `java.sql.ResultSet` - объявляет методы, которые позволяют перемещаться по набору данных и считывать значения отдельных полей в текущей записи.
@ -162,11 +162,16 @@ __Уровень изолированности транзакций__ — зн
+ антомное чтение (phantom reads)_ — ситуация, когда при повторном чтении в рамках одной транзакции одна и та же выборка дает разные множества строк.
Уровни изоляции транзакций определены в виде констант интерфейса `java.sql.Connection`:
+ `TRANSACTION_NONE` драйвер не поддерживает транзакции;
+ `TRANSACTION_READ_UNCOMMITTED` позволяет транзакциям видеть несохраненные изменения данных: разрешает грязное, непроверяющееся и фантомное чтения; + `TRANSACTION_READ_COMMITTED` любое изменение, сделанное в транзакции, не видно вне неё, пока она не сохранена: предотвращает грязное чтение, но разрешает непроверяющееся и фантомное;
+ `TRANSACTION_NONE` драйвер не поддерживает транзакции;
+ `TRANSACTION_REPEATABLE_READ` запрещает грязное и непроверяющееся, фантомное чтение разрешено; + `TRANSACTION_SERIALIZABLE` грязное, непроверяющееся и фантомное чтения запрещены.
+ `TRANSACTION_READ_UNCOMMITTED` позволяет транзакциям видеть несохраненные изменения данных: разрешает грязное, непроверяющееся и фантомное чтения;
+ `TRANSACTION_READ_COMMITTED` любое изменение, сделанное в транзакции, не видно вне неё, пока она не сохранена: предотвращает грязное чтение, но разрешает непроверяющееся и фантомное;
+ `TRANSACTION_REPEATABLE_READ` запрещает грязное и непроверяющееся, фантомное чтение разрешено;
+ `TRANSACTION_SERIALIZABLE` грязное, непроверяющееся и фантомное чтения запрещены.
> __NB!__ Сервер базы данных может не поддерживать все уровни изоляции. Интерфейс `java.sql.DatabaseMetaData` предоставляет информацию об уровнях изолированности транзакций, которые поддерживаются данной СУБД.