O ASP chama o programa de armazenamento SQLServer
Fonte http://www.bmj2000.com/vb/techniccolumn/subdetail.asp?mainid=2&boardid=asp&itemid=%CA%FD%BE%DD%BF%E2%B2%D9%D7%F7&recid=21216
Chamando Procedimentos armazenados de banco de dados
<%
SetDataconn = server.createObject ("adodb.connection")
'Crie um objeto de conexão
Dataconn.open "dsn = sinotrans; server = app_server; uid = sa; pwd =; app = microsoft (r) desenvolvestudio; wsid = app_server; regional = sim"
SetCmdTemp = server.createObject ("adodb.command")
'Crie um objeto de comando
SetRst = server.createObject ("adodb.recordset")
'Crie um objeto de conjunto de registros
cmdTemp.CommandText = "dbo.pd_test" 'Nome do procedimento armazenado
cmdtemp.CommandType = 4
A categoria de comando é 4, indicada como procedimento armazenado
Setcmdtemp.activeConnection = DATACONN
SettMpparam = cmdtemp.createParameter ("ReturnValue", 3,4,4)
cmdtemp.parameters.appendtmpparam
SettMpparam = cmdtemp.createParameter ("@begindate", 135,1,16, riqi)
'Crie um objeto de parâmetro de entrada
cmdtemp.parameters.appendtmpparam
RST.OPENCMDTEMP ,, 1,3
'Gere resultados de consulta
%>
O procedimento armazenado chamado aqui é PD_Test, que é um método padrão fornecido no ADO. No entanto, há um problema, ou seja, quando há mais de duas instruções selecionadas no procedimento armazenado, mas é logicamente impossível de executar ao mesmo tempo, o ADO solicitará que existem muitas instruções selecionadas no procedimento armazenado. A solução é executar diretamente o procedimento armazenado usando o método de execução do objeto de conexão da ADO, como segue:
<%
SetDataconn = server.createObject ("adodb.connection")
'Crie um objeto de conexão
Dataconn.open "dsn = sinotrans; server = app_server; uid = sa; pwd =; app = microsoft (r) desenvolvestudio; wsid = app_server; regional = sim"
SS = "ExecutEdBo.pd_test" & "
Setrs = dataconn.execute (ss)
%>