|
| ADODB.Command (0x800A0BB9)??? Fra : Otto Meurer |
Dato : 03-09-01 21:33 |
|
Hej NG
Jeg sidder med et problem som jeg ikke ved hvordan jeg skal løse....
Jeg er ved at opgradere fra Access til M$SQL og leger i denne forbindelse
med Stored Procedures, hvilket efter sigende skulle være bedst, at bruge ved
action commandoer (Insert, Update, Delete), men jeg indrømmer nu gerne, at
jeg er ved at opgive mit foretagende og gå retur til gode gamle recordset
kommandoer =((
Jeg bliver ved med at få denne fejl så snart jeg forsøger at køre insert,
update eller delete via stored procedures.
ADODB.Command (0x800A0BB9)
Argumenterne har en forkert type eller er uden for det angivne område, eller
der er opstået en konflikt mellem dem.
Fejlen opstår i denne linie: .CommandType = adCmdStoredProc
Et lille udpluk fra mit script:
<%
Set cmdInsert = Server.CreateObject("ADODB.Command")
'Set the properties of the command object
With cmdInsert
.ActiveConnection = strConn
.CommandText = "sp_INSERT_Security"
.CommandType = adCmdStoredProc
'add the parameters
.Parameters.Append .CreateParameter("@Name",adVarChar, adParamInput, 50,
strUserName)
.Parameters.Append .CreateParameter("@Email", adVarChar, adParamInput,
50, strEmail)
.Parameters.Append .CreateParameter("@UserID", adVarChar, adParamInput,
50, strUserID)
.Parameters.Append .CreateParameter("@Password", adVarChar,
adParamInput, 50, strPassword)
'Execute the command
.Execute,, adExecuteNoRecords
end with
%>
Jeg har endvider forsøgt mig med source koden fra Proffesional, Active
Server Pages 3.0 kapitel 9, hvor samme fejl opstår, i selv samme linie,
altså hvergang jeg kalder commandtype = *
Hvad kan jeg gøre nu, jef er mega meget lost =((
Håber der er en der kan hjælpe mig.
På forhånd tak
Otto Meurer
| |
Stig Johansen (04-09-2001)
| Kommentar Fra : Stig Johansen |
Dato : 04-09-01 05:14 |
|
Otto Meurer wrote:
> Hej NG
>
> Jeg sidder med et problem som jeg ikke ved hvordan jeg skal løse....
>
> Jeg er ved at opgradere fra Access til M$SQL og leger i denne forbindelse
> med Stored Procedures, hvilket efter sigende skulle være bedst, at bruge
> ved action commandoer (Insert, Update, Delete), men jeg indrømmer nu
[klip]
Stored procedures er kun bedst hvis du skal lave mere end een operation ad
gangen.
Hvis det er et almindeligt statement, er det blot overhead.
--
Med venlig hilsen / Best regards
Stig Johansen
linux@w3data.dk
| |
Willem van der Meijd~ (04-09-2001)
| Kommentar Fra : Willem van der Meijd~ |
Dato : 04-09-01 10:52 |
|
I stedet for en command execute, kan du også lave en connection execute (når
du ikke har output parameters). Så bliver du fri for at definiere parametere
og dermed en del overhead.
f.eks.:
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim strConn As String
Set conn = CreateObject("Adodb.Connection")
Set rs = CreateObject("ADODB.Recordset")
strConn = "Provider=MSDASQL;Driver=SQL
Server;Server=MITEST;Database=Northwind;UID=sa;PWD=qwer"
conn.Open strConn
Set rs = conn.Execute("EXEC CustOrdersOrders 'hanar'")
Do While rs.EOF = False
List1.AddItem rs.Fields(1) & " " & rs.Fields(2) & " " & rs.Fields(3)
rs.MoveNext
Loop
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
"Otto Meurer" <webmaster@gugzel.dk> wrote in message
news:9n0p3u$epd$1@sunsite.dk...
> Hej NG
>
> Jeg sidder med et problem som jeg ikke ved hvordan jeg skal løse....
>
> Jeg er ved at opgradere fra Access til M$SQL og leger i denne forbindelse
> med Stored Procedures, hvilket efter sigende skulle være bedst, at bruge
ved
> action commandoer (Insert, Update, Delete), men jeg indrømmer nu gerne, at
> jeg er ved at opgive mit foretagende og gå retur til gode gamle recordset
> kommandoer =((
>
> Jeg bliver ved med at få denne fejl så snart jeg forsøger at køre insert,
> update eller delete via stored procedures.
>
> ADODB.Command (0x800A0BB9)
> Argumenterne har en forkert type eller er uden for det angivne område,
eller
> der er opstået en konflikt mellem dem.
>
> Fejlen opstår i denne linie: .CommandType = adCmdStoredProc
>
> Et lille udpluk fra mit script:
>
> <%
> Set cmdInsert = Server.CreateObject("ADODB.Command")
>
> 'Set the properties of the command object
> With cmdInsert
> .ActiveConnection = strConn
> .CommandText = "sp_INSERT_Security"
> .CommandType = adCmdStoredProc
>
> 'add the parameters
> .Parameters.Append .CreateParameter("@Name",adVarChar, adParamInput,
50,
> strUserName)
> .Parameters.Append .CreateParameter("@Email", adVarChar, adParamInput,
> 50, strEmail)
> .Parameters.Append .CreateParameter("@UserID", adVarChar,
adParamInput,
> 50, strUserID)
> .Parameters.Append .CreateParameter("@Password", adVarChar,
> adParamInput, 50, strPassword)
>
> 'Execute the command
> .Execute,, adExecuteNoRecords
> end with
> %>
>
> Jeg har endvider forsøgt mig med source koden fra Proffesional, Active
> Server Pages 3.0 kapitel 9, hvor samme fejl opstår, i selv samme linie,
> altså hvergang jeg kalder commandtype = *
>
> Hvad kan jeg gøre nu, jef er mega meget lost =((
>
> Håber der er en der kan hjælpe mig.
>
> På forhånd tak
>
> Otto Meurer
>
>
| |
|
|