Autore Topic: mysql inseri into  (Letto 1349 volte)

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 960
    • Mostra profilo
Re: mysql inseri into
« Risposta #15 il: 01 Luglio 2013, 15:36:56 »
L'avevo visto anche io, ma non conoscendo l'sql ho preferito non dire nulla.
Che sia li la gabola?
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline giob1642

  • Grande Gambero
  • ***
  • Post: 159
    • Mostra profilo
Re: mysql inseri into
« Risposta #16 il: 02 Luglio 2013, 12:16:57 »
hai ragione è unerore di battitura ma quanto detto è giusto.
La realtà è che mysql  registra solo certi caratteri a meno che non registri una tabella di caratteri asci.
Quindi se devi registrare una tabella dove n una colonna c'è un apostrofo,un accento od altro devi registrare tutta la tabella in asci e poi riconvertirla se la frase è breve riesci a farlo agevolmente con gli operatori sulle stringhe "html" e "replace", ma ciò impone maggior attenzione nel trattamento di tutti i dati della tabella e ciò è scomodo.
Quello che m'inquieta però è che  altri linguaggi perl,python,v basic risolvono il problema agevolmente, gambas no, almeno io non ci sono riuscito.
Il problema a mio avviso è rilevante, supponi di dover introdurre in mysql decine o centinaia di tabelle che hai in acces od in msqlite.
 giob1642

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: mysql inseri into
« Risposta #17 il: 03 Luglio 2013, 10:49:17 »
In realtà la cosa strana è che quello è un errore che doveva essere evidenziato dal compilatore gmbas.
Se non l'ha fatto, vuol dire che è presente un'anomali, una sintassi non prevista.

Riguardo a MySQL, le stringhe le puoi passare tranquillamente, basta che usi una funzione di conversione, che ti slasha i caratteri di apice.
Altri caratteri, se sono di controllo è necessario fare altrettanto, mentre per gli ascii, che non siano nella tabella standard, ovvero nei prini 128, la loro memorizzazione negli archivi del database dipende dalla codifica utilizzata. Mediamente si usa utf8, che in qualche modo unifica i caratteri a livello universale, ma il suo utilizzo potrebbe non essere necessario se il tuo programma viene usato solo in Italia, o i dati provengono solo da fonti italiane.

Comunque, in ogni ambiente, in cui lo scambio dati è eterogeneo, è opportuno sempre fare molta attenzione ai flussi che passano, e intervenire con i giusti strumenti.

Offline giob1642

  • Grande Gambero
  • ***
  • Post: 159
    • Mostra profilo
Re: mysql inseri into
« Risposta #18 il: 03 Luglio 2013, 15:10:27 »
Osservazioni più che giuste, quello che è strano che mentre linguaggi come perl,python,visaul basic ed altri sono predisposti per ovviare od attutire tali inconvenient gambas no perchè?
giob1642

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: mysql inseri into
« Risposta #19 il: 03 Luglio 2013, 16:49:50 »
Per il solito e comune motivo, che le persone che ci lavorano sono molto meno, come anche dal minor numero di feedback da parte di un'esiguo numero di utilizzatori.

Tutte queste osservazioni vanno fatte direttamente nella mail list, in modo che siano direttamente visibili ai gestori del progetto. Ovviamente, da qui a metterle in campo è un'altro paio di maniche, in particolare per un discorso legato al tempo, sia delle modifiche che dai test.

Offline pastrank

  • Maestro Gambero
  • ****
  • Post: 266
    • Mostra profilo
Re: mysql inseri into
« Risposta #20 il: 03 Luglio 2013, 21:14:57 »
La realtà è che mysql  registra solo certi caratteri a meno che non registri una tabella di caratteri asci.

Ma i test escapando la stringa, aggiungendo un apice singolo, circondando la stringa con apici doppi, li hai fatti? Io evito i database come la peste, ma vedo che gli stessi problemi sono con tutti i linguaggi...