|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Добрый день! Есть DLL, написанная на Delphi 8 XE Она подключена к Oracle и волне себе работает до тех пор, пока размер входного параметра укладывается в VARCHAR2. Если длина параметра больше, то возникает Оракловая ошибка "Ошибка числа или значения" Если параметр поменять на CLOB, то ошибка исчезает, но в DLL вместо текста приходит "=" (знак равенства) Кто-нибудь пробовал передавать в DLL Оракловый CLOB в качестве параметра? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:02 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
CLOB вроде как строковой блоб. С кодировками всё нормально? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:14 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rb Она подключена к Oracle ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:16 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rb, 1. Научитесь отделять мух от котлет, а входные параметры - от выходных. 2. При правильной архитектуре проекта DLL не вносит никаких особенностей. Если код работает в EXE и не работает в DLL - значит, вы криво работаете с DLL. 3. Да, многие работали с CLOBами в Oracle. Самыми разными способами, через разные способы доступа и т. п. 4. В случае таких вопросов напрашивается ответ "Вам нужен программист". Либо на работу, либо хотя бы в качестве консультанта. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:17 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Видимо я плохо объяснил. Есть DLL, которая написана на Delphi. Лежит она сервере Оракла Оракловая процедура вызывает эту DLL, передавая в нее строковые параметры. Иногда значение строкового параметра, передаваемого в DLL, превышает 40000 символов. В Oracle для этого есть другой тип, называется CLOB. Вопрос - как передать тип CLOB в DLL, написанную на Delphi? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:34 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rbВопрос - как передать тип CLOB в DLL, написанную на Delphi? Ответ: точно так же как и в DLL написанную на любом другом языке, в точности как написано в документации Oracle. Я даже погуглить за тебя могу: https://docs.oracle.com/cd/B14117_01/appdev.101/b10795/adfns_ex.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:40 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rb Вопрос - как передать тип CLOB в DLL, написанную на Delphi? Это не Ваша забота. С этим вполне справляется сам Oracle, передавая туда OCILobLocator. От разработчика здесь требуется только указать в PL/SQL обёртке, что это параметр типа CLOB. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 12:53 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
softwarer Sergey_rb Вопрос - как передать тип CLOB в DLL, написанную на Delphi? Это не Ваша забота. С этим вполне справляется сам Oracle, передавая туда OCILobLocator. От разработчика здесь требуется только указать в PL/SQL обёртке, что это параметр типа CLOB. Так я уже делал - в результате в DLL я получал "=" знак равенства вместо текста ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:15 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Это я писал первом посте Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:15 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rbТак я уже делал Ты поменял объявление функции только в Оракуле. А надо было - и в Дельфи тоже. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:24 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Ты поменял объявление функции только в Оракуле. А надо было - и в Дельфи тоже. И не только объявление, скорее всего. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:33 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
softwarerИ не только объявление, скорее всего. Ну, это-то и идиоту будет понятно после того как компилятор начнёт выдавать ошибку на оставшийся код. Хотя как раз с идиота станется попытаться привести OCILobLocator к String... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:36 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Объявил я тип POCILOBLOCATOR, а дальше что с ним делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:39 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Что можно делать с типов данных в языках программирования? Варианты ответов: а) Понюхать; б) Полизать; в) На хвост нанизать; г) Использовать для объявления переменных и параметров подпрограмм. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:47 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Пытаюсь создать локатор Код: plsql 1.
Что указывать в качестве параметров? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 13:52 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rbПытаюсь создать локатор Зачем? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 14:19 |
|
Как получить CLOB из Oracle во внешнюю DLL в качестве параметра
|
|||
---|---|---|---|
#18+
Sergey_rb Что указывать в качестве параметров? Что написано об этом в документации по используемой библиотеке доступа? Я бы предположил, что хандл соединения с БД. И ещё раз советую обратить внимание на четвёртый пункт в моём списке. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2021, 14:22 |
|
|
start [/forum/topic.php?fid=58&msg=40106122&tid=2036938]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 408ms |
0 / 0 |