Avatar billede jeden Nybegynder
07. juni 2002 - 10:49 Der er 2 kommentarer og
1 løsning

Kald af stored procedure i Oracle og returnering af resultset

Jeg har et problem med noget kode der får en 'Syntax error or access violation'-fejl.
Jeg skal kalde en stored procedure i Oracle 8 og returnere et resultset. Kaldet skal foretages med et ADODB-objekt.
Min ODBC er en Microsoft ODBC for Oracle ver. 2.573.7713.00
Her er koden:
================================================

Private Sub Form_Load()
  Conn = "UID=scott;PWD=tiger;driver=" _
        & "{Microsoft ODBC for Oracle};SERVER=OracleDB;"

  Set Cn = New ADODB.Connection
  With Cn
      .ConnectionString = Conn
      .CursorLocation = adUseClient
      .Open
  End With

  QSQL = "{call proc_name({resultset 9, col_name})}"

  Set CPw1 = New ADODB.Command
  With CPw1
      Set .ActiveConnection = Cn
      .CommandText = QSQL
      .CommandType = adCmdText
  End With

  Set Rs = New ADODB.Recordset
  With Rs
      .CursorType = adOpenStatic
      .LockType = adLockReadOnly
  End With

End Sub


Private Sub cmdGetEveryone_Click()

  Set Rs.Source = CPw1
  Rs.Open  '<< HER FEJLER KODEN >>
  While Not Rs.EOF
      MsgBox "Column data: " & Rs(0)
      Rs.MoveNext
  Wend
  Rs.Close

End Sub
Avatar billede jeden Nybegynder
07. juni 2002 - 10:51 #1
Mine variable er erklæret sådan:
================================

Dim Cn As ADODB.Connection
Dim CPw1 As ADODB.Command
Dim Rs As ADODB.Recordset
Dim Conn As String
Dim QSQL As String
Avatar billede ocp Nybegynder
07. juni 2002 - 12:41 #2
Prøv lige dette her:

rs.open("proc_name", cn)

Det virker i hvert fald på SQL Server.

ADO returnerer automatisk de recordsets der bliver dannet i en SP.
Avatar billede jeden Nybegynder
25. juni 2002 - 10:30 #3
Har fundet en løsning.
Jeg måtte kalde proceduren i et kald, og hente mit resultset i et andet kald.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester