Visualizzazione dei risultati da 1 a 2 su 2

Discussione: [delphi] sql

  1. #1

    [delphi] sql

    Salve

    Tramite un istruzione sql devo prendere dei dati da una tabella...
    il recordset che ne deriva....mi occorre per un 'ulteriore istruzione
    sql....

    come posso implementare questo da codice?

    es....
    sqlPrimo:='SELECT * FROM contab INNER JOIN cart ON cart.Codice = contab.Codice AND cart.NumCartella = contab.NumCartella WHERE contab.Codice = cart.Codice';

    sqlSecondo:= 'SELECT * FROM clin INNER JOIN contab ON contab.codice = clin.Codice WHERE clin.Codice = contab.Codice';


    SqlSecondo deve eseguire una query prendendo i dati dal recordset sqlPrimo!



    grazie dell'aiuto...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    Potresti cercare di raggruppare tutte le INNER JOIN all'interno dello stesso statement SQL, anche se esso diventerebbe abbastanza complesso da interpretare e modificare da parte del programmatore.

    L'alternativa - che però richiede uso di codice - è impostare query parametriche. A designtime, imposti la proprietà SQL della seconda query usando dei parametri (identificatori preceduti dai due punti).

    Ad esempio:
    codice:
    SELECT * FROM Clienti WHERE ID = :IDCliente
    Quando hai eseguito la prima query, definisci il valore del parametro nella seconda query con la scrittura
    codice:
    Qry2.ParamByName('IDCliente').AsInteger := Qry1.FieldByName('ID').AsInteger;
    ed esegui anche la seconda query, magari associandole una griglia.

    Questo tipo di approccio ti permette di definire in fase di progettazione gli statement SQL da eseguire, inserendo degli identificatori segnaposto (parametri) di cui andrai poi a definire il valore tramite codice, prima di eseguire la query stessa.

    Non so se era proprio questo ciò che intendevi, ma credo che non ci siano tante altre soluzioni.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.