Внутренние компоненты драйвера Oracle - PullRequest
4 голосов
/ 27 декабря 2011

Где я могу найти информацию о том, как Oracle осуществляет связь с базой данных на самом низком уровне, я имею в виду на уровне сокетов? Я хочу написать программу (без jdbc), которая просто выполняет какое-то утверждение (выберите или создайте). Поэтому мне нужно знать, какой протокол Oracle использует для этого.

Ответы [ 2 ]

10 голосов
/ 27 декабря 2011

Почему вы хотите / должны исключить JDBC для этого? Именно поэтому существует JDBC и почему Oracle предоставляет драйверы JDBC для своих баз данных. Даже если бы существовала некоторая низкоуровневая протоколная документация для того, что вы пытаетесь сделать, у вас не было бы никакой гарантии, что она будет переносимой между выпусками Oracle и т. Д.

Я собираюсь сделать предположение, что вы хотите отменить установку клиента Oracle. Если это так, убедитесь, что вы используете драйвер type 4 JDBC или «тонкий» драйвер Oracle - доступен по адресу http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html. Это именно то, что вы, вероятно, пытаетесь сделать - подключение к базе данных Oracle через чистую Java, не требуя какого-либо другого установленного программного обеспечения - хотя технически оно все равно будет JDBC.

Если вы по-прежнему настаиваете на том, чтобы продолжить работу без каких-либо клиентских компонентов Oracle (даже включая только драйвер JDBC Oracle типа 4), вот несколько дополнительных ссылок, которые могут представлять интерес:

Где можно получить спецификацию протокола Oracle для проводного уровня?

Oracle. Вне Oracle, только у нескольких поставщиков драйверов уровня проводной связи есть это. Аналогично, в отличие от поставщиков драйверов, Oracle является единственным разрешение на его распространение. И, прежде чем вы спросите, я никогда не видел уточнение сам. Все мои знания протокола основаны на годах исследований и значительных проб и ошибок.

Этот проект доступен (был) по http://sourceforge.net/projects/sibylnet/, но с 2008-10-07 не обновлялся, и нет доступных файлов или исходного кода.

1 голос
/ 24 января 2012

Вы можете взглянуть на документацию Oracle по Oracle Call Interface . Он предназначен для использования с C, а не с Java, но если вы обернули его в какой-то материал Native Interface Java, вы могли бы решить, как его назвать.

Не говорю, что это будет безболезненно, но ... это направление, которое нужно попробовать.

/ б

...