Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Delphi XE3, errore nella Query di inserimento

    Ciao,
    non riesco ad eseguire una semplice insert nel mio database creato con MariaDB e collegato con libreria Zeos in Delphi XE3 come consigliato da franzauker2.0.

    Tutto funziona davvero bene e riesco ad inserire nel campo del database una stringa scritta nella Query stessa, ma non riesco a far inserire il contenuto di una variabile.

    codice:
    with TZQpazienti do begin Active:=False; SQL.Clear; SQL.add('insert into pazienti (codicefiscale) values (''$bcodicefiscale.Text'')'); ExecSQL; end;

  2. #2
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    In quel formato la stringa viene generata "in SQL" come... stringa.

    tipo
    codice:
     'insert into pazienti (codicefiscale) values ('+chr(39)+edtCodiceFiscale.txt+chr(39)+')';
    Come specificato nell'altro thread, però, non è una cosa molto saggia usare INSERT, giacchè se hai una tabella usi le funzioni di delphi sui Tdataset (append, fieldbyname...)
    Se invece hai una query vera e propria può essere necessario, dopo aver fatto l'insert, RIFARE la select di selezione delle righe.
    In pratica "da qualche parte" hai supponiamo 4 pazienti, presi con una select * from pazienti blablabla.
    Poi fai una INSERT brutale, e i pazienti diventano 5.
    Ora ti serve (... cuttone se e quando...) rifare la select, per avere la lista dei 5 pazienti, altrimenti il tuo componente continuerà a pensare di averne sempre 4.
    Una funzione "aggiornalista(i_ricordaser:boolean)" è piuttosto frequente

  3. #3
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    In quel formato la stringa viene generata "in SQL" come... stringa.

    tipo
    codice:
     'inser t into pazienti (codicefiscale) values ('+chr(39)+edtCodiceFiscale.txt+chr(39)+')';
    Come specificato nell'altro thread, però, non è una cosa molto saggia usare INSE RT, giacchè se hai una tabella usi le funzioni di delphi sui Tdataset (append, fieldbyname...)
    Se invece hai una query vera e propria può essere necessario, dopo aver fatto l'insert, RIFARE la select di selezione delle righe.
    In pratica "da qualche parte" hai supponiamo 4 pazienti, presi con una select * from pazienti blablabla.
    Poi fai una INSERT brutale, e i pazienti diventano 5.
    Ora ti serve (... cuttone se e quando...) rifare la select, per avere la lista dei 5 pazienti, altrimenti il tuo componente continuerà a pensare di averne sempre 4.
    Una funzione "aggiornalista(i_ricordaser:boolean)" è piuttosto frequente

  4. #4
    Continuo questa discussione, aperta per errore, al seguente link:
    http://forum.html.it/forum/showthrea...readid=1542460

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.