Использование технологий WWW для доступа к базам данных



Использование - часть 2


получим:

http://www.cnit.nsu.ru/cgi-bin/wow.win/fancy.example.test

Пользователь www

должен иметь права на исполнение этой процедуры,

явно предоставленные оператором GRANT

языка SQL.

  • После имени процедуры, через

    разделитель '?', начинают

    перечисляться параметры процедуры и их значения в виде пар:

    <название_параметра>

    = <значение_параметра>

    между собой, различные параметры

    разделяются амперсандом '&':

    <название_параметра1>=<значение_параметра1>&<название_параметра2>=

    <значение_параметра2>

    Название параметра должно совпадать с названием параметра вызываемой

    процедуры. Число параметров

    должно в точности соответствовать числу параметров процедуры.

    Если хотя бы одно из этих требований не соблюдено,

    Вы получите сообщение об ошибке.

    Порядок указания параметров значения не имеет.

    Большие и маленькие буквы в названии параметров равнозначны.

    Число реально передаваемых параметров может и не совпадать с числом

    параметров, указанных в спецификации

    процедуры. В этом случае,

    все опускаемые параметры должны иметь значения по умолчанию.

    Пример:

    http://www.cnit.nsu.ru/cgi-bin/wow.win/example.test?answer=no

    Исходя из описанного механизма работы пакета WOW

    можно сформулировать основные требования к PL/SQL

    - процедурам, обрабатывающим

    запросы от WWW - сервера.

  • Все входные переменные, передающиеся

    через WOW в процедуру всегда

    имеют тип varchar2. Если Вы

    хотите использовать какой - либо другой тип данных,

    необходимо использовать функции преобразования из varchar2.

  • В пакете htp отсутствуют

    функции вывода начала и конца HTML

    - документа. Поскольку

    многие современные броузеры интерпретируют текст без обрамляющих

    тегов <HTML> ... </HTML>

    как преформатированный, необходимо

    прямо задавать эти теги в начале и конце документа.

    Пример пакета example:

    Create or Replace package example is

    procedure test(answer in Varchar2);

    end;

    /

    Create or Replace package body example




    Содержание  Назад  Вперед