Autore Topic: L'apostrofo in Mysql e Gambas  (Letto 9130 volte)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: L'apostrofo in Mysql e Gambas
« Risposta #15 il: 05 Giugno 2009, 23:47:44 »
Se NomeTabella è una stringa, no. :-P
Visita il mio sito personale: http://www.leonardomiliani.com

Offline swan

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #16 il: 30 Giugno 2009, 00:00:44 »
ci sono casi però in cui diventa fondamentale utilizzare istruzioni sql di INSERT INTO per velocizzare le operazioni, esempio nell'importazione di dati si avrebbero sicuramente dei tempi di attesa ben più lunghi utilizzando:

connessione.open
....connessione.create("...")
....
connessione.commit

potrebbe allora essere necessario "formattare" correttamente le stringhe oppure sostituire gli apostrofi al keypress con caratteri simile, c'è un carattere che è simile all'apostrofo ma è di traverso, non lo so fare sotto linux. dov'è la mappa dei caratteri? bho!
altra cosa, quando poi fai le ricerche con le like come si comporta poi gambas con sti campi con l'apostrofo?

ciao
max

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #17 il: 30 Giugno 2009, 00:31:08 »
Come ha detto leo un metodo non esclude l'altro, quindi se devi reperire dati nel DB che richiedono delle Select complesse o con subquery niente ti vieta di utilizzare l'SQL 'puro'.

Per quanto riguarda l'Insert ti assicuro che con il metodo di Gambas che mi è stato suggerito non ho avuto nessun problema anche con dati complessi per esempio leggendoli da GridView, ColumnView e Array superando quindi il problema di stringhe apostrofate e di conseguenza non ho problemi a fare ricerche con il predicato Like in quanto i dati vengono inseriti correttamente nel DB.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #18 il: 23 Ottobre 2009, 20:57:31 »
Citazione

leo72 ha scritto:
Se invece vuoi ad esempio cancellare tutti i nominativi che si chiamano Rossi, dai:
Codice: [Seleziona]

Connessione.Delete(NomeTabella, "cognome = &1", "Rossi")


In pratica, Delete esegue una query filtrando i risultati con i parametri immessi, come se eseguissi un WHERE in SQL puro.


E se volessi cancellare solo i "Rossi" di "Milano" ?
Dovrei praticamente aggiungere AND citta = "Milano" all'esempio di leo.
Ho fatto varie prove ma non ci sono riuscito, si può fare utilizzando lo stesso metodo?

C'è da qualche parte un minimo di documentazione riguardo questi metodi?
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #19 il: 24 Ottobre 2009, 10:39:11 »
purtroppo non esiste una documentazione dettagliata e completa dell' utilizzo dei metodi.
I metodi implementati da gambas secondo la mia opinione sono una comodità per riuscire a lavorare con un db senza conoscere la sintassi sql.
in alternativa puoi usare il metodo exec inserendo una query standard che effettua le tue richieste, in questo caso il lavoro sporco viene fatto dalla query , per sapere che query utilizzare hai una quasi infinita scelta di documentazione inerente il "linquaggio" SQL.

poi puoi sempre provare andando a  tentoni ad esempio con:

Codice: [Seleziona]

Connessione.Delete(NomeTabella, "cognome = &1", "Rossi","citta=&1","milano")
 

oppure
Codice: [Seleziona]

Connessione.Delete(NomeTabella, "cognome = &1","citta=&1", "Rossi","milano")
 

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #20 il: 24 Ottobre 2009, 15:35:02 »
Accidenti alla documentazione mancante  :evil:  :evil:

Concordo pienamente con te sulla comodità dell'uso dei metodi di Gambas, da quando li ho conosciuti grazie al forum mi hanno permesso di evitare di implementare molto codice di controllo su alcune funzioni a vantaggio di una intellegibilità maggiore del codice stesso.

Per quanto riguarda l'SQL "puro" non ho grossi problemi ad implementarlo, la mia richiesta oltre che per approfondire l'argomento, era per continuare ad usare lo stesso metodo fin dove possibile.

Grazie comunque dei suggerimenti, vado avanti a "tentoni" come mi hai indicato tu in attesa di qualcosa di ufficiale.

Se qualcuno del forum ha avuto esperienza in merito si faccia pure avanti.
Grazie
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: L'apostrofo in Mysql e Gambas
« Risposta #21 il: 24 Ottobre 2009, 16:28:59 »
Vorrei invitarti (se possibile, ovviamente) a scrivere magari qualcosa a riguardo nel nostro wiki. In questo modo nessuno si troverà più nella tua stessa situazione.-

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: L'apostrofo in Mysql e Gambas
« Risposta #22 il: 24 Ottobre 2009, 20:51:26 »
Citazione

Ceskho ha scritto:
Vorrei invitarti (se possibile, ovviamente) a scrivere magari qualcosa a riguardo nel nostro wiki. In questo modo nessuno si troverà più nella tua stessa situazione.-


 :eh: Scusa Ceskho, ma non ho capito.
Scrivere riguardo a cosa.

P.S.: Scrivere sul wiki: mi sarebbe piaciuto partecipare, ma ho sempre avuto difficoltà a mettere per iscritto le mie conoscienze e trasmetterle agli altri in modo comprensibile (è un mio limite, purtroppo).
Mi riprometto di provarci, appena il lavoro me lo permette.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: L'apostrofo in Mysql e Gambas
« Risposta #23 il: 25 Ottobre 2009, 12:38:03 »
Riguardo a tutto ciò che la documentazione non riesce a coprire efficientemente.