Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» BDE

Автор: XDiaBLo
Дата сообщения: 14.09.2004 14:36
В BDE администраторе настроил, всё работает, но вот когда пытаюсь в C++Builder'e 6 сконнектиться с базой, оно мне выдаёт ошибку: ora-03114 нет связи с сервером, и ошибка BDE 13059: general sql error... Из SQL Explorer'a коннект нормальный, всё работает. В чём проблема???
Автор: Dim_San
Дата сообщения: 14.09.2004 15:18
XDiaBLo

Что пишешь в св-вах компонента TDataBase?

Добавлено
Кстати, не работай ты через BDE - это отстой.
Делаешь следующее:
1. Обзываешь БД, ну например TestDB в поле DataBase Name компонента TDataBase
2. Выбираешь в DriverName (все того же компонента) "ORACLE"
3. Кликаешь дважды на компоненте и в текстовом поле "Parameter Overrides" постишь следующее:

NET PROTOCOL=TNS
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
LANGDRIVER=ancyrr
SQLQRYMODE=
SQLPASSTHRU MODE=SHARED AUTOCOMMIT
SCHEMA CACHE TIME=-1
MAX ROWS=-1
BATCH COUNT=200
ENABLE SCHEMA CACHE=FALSE
SCHEMA CACHE DIR=
ENABLE BCD=FALSE
ENABLE INTEGERS=FALSE
LIST SYNONYMS=NONE
ROWSET SIZE=20
BLOBS TO CACHE=64
BLOB SIZE=32
OBJECT MODE=FALSE
SERVER NAME=***************** (Имя твоей базы в оракле)
USER NAME=*******************
PASSWORD=*******************

Пробуй.
И забудь про Oracle через BDE (коряво!!!)
Автор: MrZeRo
Дата сообщения: 14.09.2004 17:08
Dim_San
Ага
XDiaBLo
Надо использовать Oracle Data Access Components или Direct Oracle Access, в крайнем случае ADO компоненты (почти так же коряво, как и BDE). В Варезнике это проходило. Лично я использую Oracle Data Access Components, впечатления очень хорошие.
Автор: Dim_San
Дата сообщения: 14.09.2004 18:33
MrZeRo

Ставил я себе эти компоненты, но в чем серьезность выгоды (для себя) - не понял.
Есть прямой коннект к БД (без всяких посредников), чего же еще?
К тому же дополнительные компоненты - это доп. килобайты экзешника....
Поэтому я тут отношусь с осторожностью - юзаю тока RX и InfoPower
Автор: XDiaBLo
Дата сообщения: 15.09.2004 07:08
Всем спасибо, особенно Dim_San, буду пользоваться именно этим способом. Но проблема решилась проще, я ударил себя по башке, и отключил в Outpost Firewall'е блокировку сети у Билдера... )) Вот блин, дурная башка, тоже мне блин настроил фаервол... И когда я успел там Билдер заблочить?
Автор: MrZeRo
Дата сообщения: 15.09.2004 08:13
Dim_San
А выгода с том, что они поддерживают специфичные типы Oracle, такие как Blob, курсоры и т.д., при работе с процедурами, позволяют выполнять куски кода на PL/SQL и многое другое.
Кстати, если ты работаешь с компонентом TDataBase, это автоматически означает, что работаешь через BDE.
Доказательство: TDatabase содержится в модуле DBTables, а заглянув в DBTables, видим:

Цитата:

unit DBTables;

{$R-,T-,H+,X+}

interface

uses Variants, Windows, SysUtils, Classes, DB, DBCommon, BDE, SMINTF;


Так что имеешь тот же BDE, который только что обругал (впрочем, справедливо обругал).

Совсем без компонентов тяжело , поэтому если не BDE, то почему бы не Oracle Data Access Components?
Автор: XDiaBLo
Дата сообщения: 15.09.2004 08:57
MrZeRo
А где эти твои компоненты взять, чтоб заценить? Хотца все варианты рассмотреть...
Автор: Dim_San
Дата сообщения: 15.09.2004 10:51
MrZeRo

Цитата:
Доказательство: TDatabase содержится в модуле DBTables....

Ну это не доказательство того что в приведенном мною примере для XDiaBLo соединение идет через BDE (так же как и через псевдоним БД в BDE).
Обрати внимание - в моем случае коннект происходит напрямую через драйвер ORACLE, а не через Псевдоним (Alias).
А вот если ты создаешь псевдоним - вот тогда действительно у тебя будут проблемы с полями типа BLOB.
Так что если бы не было разницы - наверное и работать должно было бы все одинаково... Логично?


Цитата:
курсоры и т.д., при работе с процедурами, позволяют выполнять куски кода на PL/SQL и многое другое

Дело в том, что создавать курсоры и выполнять куски кода из приложения я считаю (и не только я) в корне неправильным и ни в коем случае этим не пользуюсь. Вообще это считается "дурным тоном программирования".
Но я тебя ни в коем случае не критикую - сам раньше так же делал
Вот когда столкнешься с тем как обеспечить реальную секьюрность твоей БД - тогда поймешь о чем я

Добавлено

Цитата:
...тот же BDE, который только что обругал...

если ты заметил, то XDiaBLo именно все делал через Alias:

Цитата:
В BDE администраторе настроил, всё работает...

Страницы: 1

Предыдущая тема: Конвертер исходных текстов C++ в Pascal


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.