Как только Вы создали пул соединений, клиентская страница может получить доступ к индивидуальному соединению из пула. Если Вы используете объект database, соединение в данном объекте является неявным; то есть Вы используете методы объекта database для доступа к соединению. Если, однако, Вы используете объекты DbPool, соединение инкапсулируется в объекте Connection, который Вы получаете через вызов метода объекта DbPool. Например, в следующем пуле:
project.eng = new DbPool ("ORACLE", "myserver", "ENG", "pwd1", "", 5);
Вы можете получить соединение из пула с помощью такого вызова метода:
myconn = project.eng.connection ("My Connection", 60);
Оба параметра метода являются необязательными. Первый это имя соединения (используется при отладке); второй это целое число, обозначающее таймаут в секундах. В этом примере, если пул имеет доступное соединение или если оно становится доступным в течение 60 секунд, это соединение присваивается переменной myconn. Если соединение не становится доступным в течение указанного периода, этот метод возвращается без соединения. Дополнительно об ожидании получения соединения из пула см. раздел . О том, что делать, если соединение не получено, см. .
Если Вы закончили использование соединения, возвратите его в пул путём вызова метода release объекта Connection. (Если Вы используете объект database, Вам не нужно самостоятельно освобождать соединение). Прежде чем вызвать метод release, закройте все открытые курсоры, хранимые процедуры и результирующие наборы. Если Вы вызываете метод release, система ожидает, когда всё закроется, и возвращает затем соединение в пул базы данных. После этого соединение доступно следующему пользователю. Об использовании курсоров см. . О хранимых процедурах и результирующих наборах см. .
После получения соединения (через объект database или объект Connection), Вы можете работать с БД. В таблице резюмированы методы объектов database и connection для работы с единственным соединением. Объект database имеет и другие методы для обслуживания пула соединений, рассмотренные в разделе
cursor | Создаёт курсор БД для специфицированного оператора SQL SELECT. |
SQLTable | Отображает результаты выполнения запроса. Создаёт таблицу HTML для результата выполнения оператора SQL SELECT. |
execute | Выполняет специфицированный оператор SQL. Используется для операторов SQL, отличных от запросов/queries. |
connected | Возвращает true, если пул БД (и, следовательно, данное соединение) соединён с БД. |
release | (Только для Connection) Освобождает соединение обратно в пул. |
beginTransaction | Начинает транзакцию SQL. |
commitTransaction | Подтверждает текущую транзакцию SQL. |
rollbackTransaction | Выполняет откат текущей транзакции SQL. |
storedProc | Создаёт объект хранимой процедуры и запускает специфицированную хранимую процедуру БД. |
majorErrorCode | Важнейший код ошибки, возвращаемый сервером БД или ODBC. |
majorErrorMessage | Сообщение о важнейшей ошибке, возвращаемое сервером БД или ODBC. |
minorErrorCode | Второй по значению код ошибки, возвращаемый библиотекой производителя. |
minorErrorMessage | Второе по значению сообщение о важнейшей ошибке, возвращаемое библиотекой производителя. |