На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
  
> package Oracle
    Если кто занает или уже встречался с подобной проблемой в Oracle 8 есть возможность хранить на Pl SQL некий текст (процедуру фукцию) в виде package может кто подскажет как до нее добраться из Delphi стандартные компоненты подразумевают только
    доступ к харнимым процедурам.
      вкладка ADO насколько помниться.
      ну и там по выбору ...
      например TADOCommand:
      ADOCommand_db->CommandText =
      "INSERT INTO SP_TITLE (TITLE_NUM, TITLE_NAME, TITLE_INPFL, TITLE_REQFL) VALUES (" +
      FormNewTitle->Edit1->Text + ", '" +
      FormNewTitle->Edit2->Text + "', " +
      i_inpfl + ", " + i_reqfl + ")";
      try
      {
      ADOCommand_db->Execute();
      }
      __except( true )
      {
      Application->MessageBox("Mather fucker ...",
      NULL, MB_OK);
      }
      ну или в CommandText засунь типа:
      BEGIN
      PACKAGE1.ORA_PROC1(:param1, :param2);
      END
      ... ну как в PL/SQL пишеш - так и тут.
      и в TADOCommand->Parameters методами AddParameter and atc
      все пропиши.
      Потом есть либа компонентная DAO - Direct Oracle Access.
      Она напрямую с библиотекой ракла работает. но гибкость
      теряеш.
      Можно еще через TQuery и т.д. (BDE), но это
      дополнительная прослойка да и глючит она.
      да ... коннектится к раклу будеш через TADOConnection.
      там в параметрах укажеш то что прописал в
      tnsnames.ora ну и по желанию юзер/пассворд.

      ps: код билдеровский, старый но рабочий.
      в дельфю переписать - {} замени на begin end =) и т.д.
        поправка.
        случайно просмотрел еще раз вопрос ...
        тебе нужно добраться до самого тела хранимой
        процедуры ? видно не так вопрос понял.
        Тогда через OCI функции.
        Например ... есть такая утилита TOAD.
        она как раз писалась на делфях ... ессно
        идет без сырцов ... да и кстати комерческая.
        Но писалась человеком видно не соображающим
        в низах винды, поэтому вся долбагеровская инфа оставлена и
        защита мяхко говоря остановит только тех, кто
        EAX от ESP (intel) отличить не могут.
        Поэтому все лехко раскапывается.
        Использовался там пакет DAO как раз.
        Его можно найти в сырцах. DAO напрямую через
        OCI функции работает с раклом.
        Через него и вытягивается в тоаде все
        тригера, процедуры... т.е. скрипты.

        Ищи в сети подобные пакеты или rtfm.
        почитай еще про Pro C/C++.
        И кстати если провести аналогию с MS SQL ...
        то там MS реализовала ряд COM объектов для
        доступа к своему серверу.
        Может и оракл пошел по такому пути (хотя не
        уверен). Не знаю ... под Win глубоко ракло
        и его клиента не програмил.

        такие дела.
        1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0201 ]   [ 15 queries used ]   [ Generated: 18.05.24, 12:10 GMT ]