| 
 | 
| 
 
Хранимые процедуры в классическом ASP 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Задавал вопрос, но ответа не нашел и сам топик где-то затерялся. Нашел ответ сам, но долго искал, решил поделится может кому пригодится. Тема хоть и старая, но мне пришлось потрудится чтобы разрешить загадку. Речь идет о вызове хранимых процедур в контексте объекта ADODB.Command Чтобы правильно вызвать системную процедуру (конечно, при условии что она правильно создана и описана) необходимо: 1. Поместить в global.asa следующую строку: Код: plaintext Это даст возможность при задавать свойства объекта ADODB.Command при помощи литеральных констант, таких как adChar, adDecimal, adParamInput и т.д., а не цифр, которые довольно сложно запомнить. 2. Обязательно нужно указать свойство: Код: plaintext Это необходимо для того чтобы во-первых SQL сервер однозначно определял свойство cmd.CommandText = "name_procedure", как имя системной процедуры. Во-вторых, по невыясненным причинам, если процедура все же неправильно написана (в моем случае отсутствовал оператор ROLLBACK TRAN), то сервер сообщает не о характере ошибки, а об отсутствующем входном параметре. Даже несмотря на то что все необходимые параметры уже присутсвуют в коллекции, в чем нетрудно убедится, выполнив следующий код: Код: plaintext 1. 2. Такие дела. Для любителей кидаться кирпичами. В прошлый раз когда я написал статью, я наслушался разного: "Ламерская статья", "Это не оптимально" и т.д. Мужики! Да я и не говорю что это лучший способ, или что я Америку открыл... Но к сожалению, сложно найти по настоящему обстоятельный ответ. Профессионалы чаще отбрасываются короткими фразами, вместо того чтобы рассказать как действительно НАДО писать. Зачем тогда вообще писать? Axl ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 21.05.2003, 09:32 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=17&fpage=134&tid=1354362]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    39ms | 
get topic data:  | 
    13ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    26ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 14ms | 
| total: | 130ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.»
    
    
    ... бла, бла, бла ...