Autore Topic: Tabelle in sqlite  (Letto 1124 volte)

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Tabelle in sqlite
« il: 05 Febbraio 2008, 06:24:32 »
Per puntare ad una tabella specifica di un database sqlite sto utilizzando questo metodo ma non lo reputo molto 'elegante':

Codice: [Seleziona]
DIM hTable AS Table
FOR EACH hTable IN MODMain.$Con.Tables
 IF hTable.Name = "tbALIMENTI" THEN
       
 ....istruzioni ....

 END IF
NEXT


esiste un metodo che non utilizzi il FOR EACH?

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Tabelle in sqlite
« Risposta #1 il: 05 Febbraio 2008, 10:11:55 »
Non ho capito una cosa.... ma tu non sai a priori i nomi delle tabelle del DB?
E perché non li sai? Perché il DB viene aggiornato/modificato esternamente alla tua applicazione?
Visita il mio sito personale: http://www.leonardomiliani.com

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.256
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: Tabelle in sqlite
« Risposta #2 il: 05 Febbraio 2008, 15:20:42 »
Cerco metodi 'generali' per estendere il concetto di risabilità del codice, la routine deve andare bene x un db con due tabelle come per un db con 100 tabelle. Mia intenzione e' fare una procedura dove passo il nome della tabella e l'array dei dati e viene aggiunto il record, senza nemmeno mettere manualmente ne' nomi di campo ne' determinare a mano il nome di campo. Massima comodità..

Esempio di output con una subroutine che sto approntando...crea automaticamente questa sql partendo dal nome della tabella e da un controllo columnview dove risiedono i dati:

"INSERT into tbALIMENTI (idalimento, produttore, alimento, quantita, um, punti, energia, proteine, grassi, carboidrati, gr_poly, gr_mono, gr_sat, gr_trs, gr_col, carb_sugar, carb_starch, carb_fibre, indice_glicemico, glic_load, vit_A, vit_C, vit_D, vit_E, vit_K, vit_B6, vit_B12, vit_niacina, vit_B1, vit_riboflavina, vit_folate, vit_B5, vit_biotin, min_sodio, min_potassio, min_calcio, min_ferro, min_zinco, min_fosforo, min_copper, min_magnesio, min_manganese, min_selenio, min_cromo, min_molybend, min_chloride, min_iodine, acqua, alcool, caffeina, amino_lglutamm, amino_larginina, amino_leucina, amino_isoleucina, amino_valina) VALUES (valore n.1, 'valore n.2', 'valore n.3', valore n.4, 'valore n.5', valore n.6, valore n.7, valore n.8, valore n.9, valore n.10, valore n.11, valore n.12, valore n.13, valore n.14, valore n.15, valore n.16, valore n.17, valore n.18, valore n.19, valore n.20, valore n.21, valore n.22, valore n.23, valore n.24, valore n.25, valore n.26, valore n.27, valore n.28, valore n.29, valore n.30, valore n.31, valore n.32, valore n.33, valore n.34, valore n.35, valore n.36, valore n.37, valore n.38, valore n.39, valore n.40, valore n.41, valore n.42, valore n.43, valore n.44, valore n.45, valore n.46, valore n.47, valore n.48, valore n.49, valore n.50, valore n.51, valore n.52, valore n.53, valore n.54, valore n.55)"

oppure

"UPDATE tbALIMENTI idalimento=valore n.1, produttore='valore n.2', alimento='valore n.3', quantita=valore n.4, um='valore n.5', punti=valore n.6, energia=valore n.7, proteine=valore n.8, grassi=valore n.9, carboidrati=valore n.10, gr_poly=valore n.11, gr_mono=valore n.12, gr_sat=valore n.13, gr_trs=valore n.14, gr_col=valore n.15, carb_sugar=valore n.16, carb_starch=valore n.17, carb_fibre=valore n.18, indice_glicemico=valore n.19, glic_load=valore n.20, vit_A=valore n.21, vit_C=valore n.22, vit_D=valore n.23, vit_E=valore n.24, vit_K=valore n.25, vit_B6=valore n.26, vit_B12=valore n.27, vit_niacina=valore n.28, vit_B1=valore n.29, vit_riboflavina=valore n.30, vit_folate=valore n.31, vit_B5=valore n.32, vit_biotin=valore n.33, min_sodio=valore n.34, min_potassio=valore n.35, min_calcio=valore n.36, min_ferro=valore n.37, min_zinco=valore n.38, min_fosforo=valore n.39, min_copper=valore n.40, min_magnesio=valore n.41, min_manganese=valore n.42, min_selenio=valore n.43, min_cromo=valore n.44, min_molybend=valore n.45, min_chloride=valore n.46, min_iodine=valore n.47, acqua=valore n.48, alcool=valore n.49, caffeina=valore n.50, amino_lglutamm=valore n.51, amino_larginina=valore n.52, amino_leucina=valore n.53, amino_isoleucina=valore n.54, amino_valina=valore n.55 WHERE id=xx"



ciao