
pdf / 2-JDBC
.pdf
Общая инормация
●getURL
●getUserName
●getDatabaseProductVersion, getDriverMajorVersion and getDriverMinorVersion
●getSchemaTerm, getCatalogTerm and getProcedureTerm
●nullsAreSortedHigh and nullsAreSortedLow
●usesLocalFiles and usesLocalFilePerTable
●getSQLKeywords

Возможности
●supportsAlterTableWithDropColumn
●supportsBatchUpdates
●supportsTableCorrelationNames
●supportsPositionedDelete
●supportsFullOuterJoins
●supportsStoredProcedures
●supportsMixedCaseQuotedIdentifiers
●supportsANSI92EntryLevelSQL
●supportsCoreSQLGrammar

Пределы параметров
●getMaxRowSize
●getMaxStatementLength
●getMaxTablesInSelect
●getMaxConnections
●getMaxCharLiteralLength
●getMaxColumnsInTable

Объекты и их атрибуты
●getSchemas and getCatalogs
●getTables
●getPrimaryKeys
●getProcedures and getProcedureColumns
●getUDTs
Транзакции
•supportsMultipleTransactions
•getDefaultTransactionIsolation

Новые методы JDBC 3.0
●getSuperTypes
●getSuperTables
●getAttributes
●getSQLStateType
●supportsSavepoints
●supportsNamedParameters
●supportsMultipleOpenResults
●supportsGetGeneratedKeys
●getResultSetHoldability

Exceptions
● SQLException
Текст сообщенияSQLState (строка)Код ошибки
Ссылка на вложенное исключение
● SQLWarning
метод getWarnings для:
Connection
Statement
ResultSet
● DataTruncation
Statement.setMaxFieldSize для отключения
● BatchUpdateException

Transactions
●A — atomicity (атомарность)
●C — consistency (непротиворечивость)
●I — isolation (изоляция)
●D — durability (долговечность)

Transactions
● Auto-commit mode
Неприменимо для распред. транзакций. Может завершать транзакцию сразу после исполнения запроса:
По завершению Insert, Update, Delete, and DDL
Для Select по закрытию ResultSet:
ResultSet.close
Выбраны все строки из ResultSet
Начато новой исполнение ассоциированного Statement
Исполнен другой Statement в этом же соединение
CallableStatement: закрыты все связанные с ним ResultSets
●Transaction isolation levels
TRANSACTION_NONE
TRANSACTION_READ_UNCOMMITTED
TRANSACTION_READ_COMMITTED
TRANSACTION_REPEATABLE_READ
TRANSACTION_SERIALIZABLE
●Savepoints

Connection Pooling
interface ConnectionPoolDataSource
getPooledConnection()
getPooledConnection(String user,String password)
interface PooledConnection
getConnection()
close()
addConnectionEventListener
removeConnectionEventListener

Использование ConnectionPool
●DataSource.getConnection
●DataSource ищет свободную PooledConnection если не найдена создает новую вызовом: ConnectionPoolDataSource.getPooledConnection
●DataSource помечает соединение как занятое
●Добавляет себя: PooledConnection.addConnectionEventListener
●Возвращает соединение PooledConnection.getConnection клиенту
Данное соединение прозрачно для клиента и не может быть использовано повторно до вызова close().