ASP вызывает хранимую процедуру ORACLE и возвращает набор результатов.
В Интернете я видел множество методов ASP для вызова ORACLE, но в них нет ничего прямого, поэтому я суммировал информацию о каждой компании и, наконец, придумал метод, который я нашел. Мне кажется, что это более популярно, поэтому вот метод
##############################
.################ ##
хранимая процедура Oracle
############################################# #
- -Создать заголовок
создать или заменить пакет pck_as
как
тип t_product_id — это таблица чисел
индекс поbinary_integer;
тип t_serial_no — это таблица varchar (300)
индекс поbinary_integer;
тип t_buy_date — это таблица дат
индекс поbinary_integer;
процедура allsfc
(
Product_id вне t_product_id,
серийный_но из t_serial_no,
buy_date истекает t_buy_date
);
--процедура allsfc1;
конец pck_as;
--Создать тело пакета
создать или заменить тело пакета pck_as
как
процедура allsfc
(
Product_id вне t_product_id,
серийный_но из t_serial_no,
buy_date истекает t_buy_date
)
является
курсор cur_sfc_tbl_product_reg равен
выберите product_id,serial_no,buy_date из sfc_tbl_product_reg;
я номер по умолчанию 1;
начинать
для записи в cur_sfc_tbl_product_reg
петля
product_id(i) := onrecord.product_id;
серийный_но (я): = onrecord.serial_no;
buy_date(i) := onrecord.buy_date;
я := я + 1;
конечная петля;
конец;
конец;
###############################################
ASP-вызов
###############################################
<html>
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Документ без названия</title>
</head>
<тело>
<%
дим стр_ора
тусклый objconn_ora
str_ora = "Driver={Microsoft ODBC for Oracle};Server=ora192;uid=dwuser;pwd=family.samsung.com.cn"
set objconn_ora = server.CreateObject("adodb.connection")
objconn_ora.connectionstring = str_ora
objconn_ora.CursorLocation = 3
objconn_ora.open
dim strsql
установите rs1 = server.CreateObject("ADODB.RecordSet")
strsql = "{call pck_as.allsfc({resultset 90000, Product_id, серийный_номер, buy_date})}"
set objcomm1 = server.CreateObject("adodb.command")
objcomm1.activeconnection = objconn_ora
objcomm1.commandtype = 1
objcomm1.commandtext = strsql
установите rs1 = objcomm1.execute
пока не rs1.eof
ответ.Write(rs1(0) & "|" & rs1(1) & "|" & rs1(2) & "|<BR>")
rs1.movenext
идти
%>
</тело>
</html>