Autore Topic: [RISOLTO] MySQL - Stored Procedure  (Letto 1127 volte)

Offline pirandello

  • Gamberetto
  • *
  • Post: 35
    • Mostra profilo
[RISOLTO] MySQL - Stored Procedure
« il: 01 Aprile 2010, 22:04:08 »
Salve,
esiste del codice in Gambas per poter chiamare una Stored Procedure in MySQL?
Grazie
« Ultima modifica: 10 Aprile 2010, 19:19:02 da pirandello »

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #1 il: 01 Aprile 2010, 22:24:21 »
puoi utilizzare la classica istruzione

connection.exec(sql)

in cui sql contiene la stringa sql che contiene la stored procedure

dovrebbe essere così

Offline pirandello

  • Gamberetto
  • *
  • Post: 35
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #2 il: 09 Aprile 2010, 14:39:28 »
puoi utilizzare la classica istruzione

connection.exec(sql)

in cui sql contiene la stringa sql che contiene la stored procedure

dovrebbe essere così

Potresti aiutarmi scrivendo qualche riga di codice per comprendere meglio?
Grazie
« Ultima modifica: 09 Aprile 2010, 14:41:43 da pirandello »

Offline Will32

  • Maestro Gambero
  • ****
  • Post: 273
  • Evviva Linux e la Programmazione
    • Mostra profilo
    • TuttoComputer
Re: MySQL - Stored Procedure
« Risposta #3 il: 09 Aprile 2010, 15:18:56 »
Dovrebbe essere più a meno così :

Codice: [Seleziona]
DIM $hConn AS NEW Connection
DIM sql AS String

  WITH $hConn
  
    .Type = "MySQL"  
    .Host =  xxxxxx    ' metti il tuo percorso
    .Login = ""    
    .Password = ""    

  END WITH
  
      $hconn.Open
      
          sql = "" ' metti la stringa della procedura
          hres = $hconn.Exec(sql)
                            
      $hconn.Close
« Ultima modifica: 09 Aprile 2010, 17:19:32 da Will32 »

Visita le comunità di Gambas, programma e diventa nostro amico :2birre:

Offline pirandello

  • Gamberetto
  • *
  • Post: 35
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #4 il: 09 Aprile 2010, 16:34:16 »
Dovrebbe essere più a meno così :

Codice: [Seleziona]
DIM $hConn AS NEW Connection
DIM sql AS String

  WITH $hConn
  
    .Type = "MySQL"  
    .Host =  xxxxxx    ' metti il tuo percorso
    .Login = ""    
    .Password = ""    

  END WITH
  
      $hconn.Open
      
          sql = "" ' metti la stringa della procedura
          hres = $hconn.Exec(sql)
                            
      $hconn.Close

Ho utilizzato il codice sopra ma quando chiamo la Stored Procedure con:

 hres = $hconn.Exec("CALL StoredProcedure(HelloWorld)")

ho questo errore:

query failed: PROCEDURE test.StoredProcedure does not exist

Qualche idea del perchè?
Grazie


Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: MySQL - Stored Procedure
« Risposta #5 il: 09 Aprile 2010, 16:52:03 »
Ma la procedura che vuoi usar esiste all'interno dell'ambiente in cui usi il database?

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #6 il: 09 Aprile 2010, 22:10:57 »
Forse mi sbaglio ma quello che hai scritto mi sa da visualbasic

Offline Will32

  • Maestro Gambero
  • ****
  • Post: 273
  • Evviva Linux e la Programmazione
    • Mostra profilo
    • TuttoComputer
Re: MySQL - Stored Procedure
« Risposta #7 il: 10 Aprile 2010, 09:07:26 »
Prova a togliere dal codice hres .   ;D
Che cosa , se posso, devi fare con il programma ?

P.S : Il codice l'ho prelevato da un programma in Gambas , quando tanti anni fa stavo imparando !
« Ultima modifica: 10 Aprile 2010, 09:18:13 da Will32 »

Visita le comunità di Gambas, programma e diventa nostro amico :2birre:

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #8 il: 10 Aprile 2010, 11:37:11 »
hres deve essere dichiarato
dim hres as result

Offline Will32

  • Maestro Gambero
  • ****
  • Post: 273
  • Evviva Linux e la Programmazione
    • Mostra profilo
    • TuttoComputer
Re: MySQL - Stored Procedure
« Risposta #9 il: 10 Aprile 2010, 14:47:34 »
Ho messo hres nel codice prechè l'ho preso da un programma ( e mi son dimenticato di toglierlo ) .  :(
Ecco il codice d'esempio ( che non ha hres, perchè a priandello non serve !!   :P ) :

Codice: [Seleziona]
DIM $hConn AS NEW Connection
DIM sql AS String

  WITH $hConn
 
    .Type = "MySQL" 
    .Host =  xxxxxx    ' metti il tuo percorso
    .Login = ""   
    .Password = ""   

  END WITH
 
      $hconn.Open
     
          sql = "" ' metti la stringa della procedura
          $hconn.Exec(sql)
                             
      $hconn.Close

Se è tutto a posto, metti [ RISOLTO ] nel titolo .   ;D

Visita le comunità di Gambas, programma e diventa nostro amico :2birre:

Offline pirandello

  • Gamberetto
  • *
  • Post: 35
    • Mostra profilo
Re: MySQL - Stored Procedure
« Risposta #10 il: 10 Aprile 2010, 19:18:35 »
Ho messo hres nel codice prechè l'ho preso da un programma ( e mi son dimenticato di toglierlo ) .  :(
Ecco il codice d'esempio ( che non ha hres, perchè a priandello non serve !!   :P ) :

Codice: [Seleziona]
DIM $hConn AS NEW Connection
DIM sql AS String

  WITH $hConn
 
    .Type = "MySQL" 
    .Host =  xxxxxx    ' metti il tuo percorso
    .Login = ""   
    .Password = ""   

  END WITH
 
      $hconn.Open
     
          sql = "" ' metti la stringa della procedura
          $hconn.Exec(sql)
                             
      $hconn.Close

Se è tutto a posto, metti [ RISOLTO ] nel titolo .   ;D

Adesso è tutto OK
SQL = "CALL + StoredProcedure"