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

    cosa fare se la struttura del db cambia di frequente

    Ciao a tutti,
    sto sviluppando una applicazione web da zero (IN PHP e MYSQL) per un'area di cui non mi sono mai occupato prima per cui spesso mi capita (anche a causa di numerosi change request) di aggiungere o togliere campi di tabelle rendendo la struttura del DB molto variabile anche a distanza di pochi giorni.

    La prima domanda è:

    come faccio a far si che tutti questi cambiamenti non mi facciano perdere un sacco di tempo ad aggiornare il codice PHP della applicazione.

    La seconda domanda è:

    mi conviene avere metodi specializzati (per inserimento cancellazione etc) in ogni classe corrispondente a una tabella del db oppure metodi generici da mettere nella classe DB? nel caso la risposta sia quella di mettere il tutto nella classe DB c'è qualche cosa di preconfezionato a cui io gli do in pasto i valori e lui se li organizza traducendoli in INSERT UPDATE DELETE e quant'altro.

    Grazie a chiunque voglia rispondere.
    Erebigal

  2. #2
    la risposta alla prima domanda è molto semplice:
    prima si progetta e poi si scrive il codice

    e i change request vanno fatti pagare cari al cliente (interno o esterno che sia) cosi gliene passa la voglia

    per la seconda dipende: io preferisco dei metodi generici per insert, update, delete, prendere 1 record o prendere n record, poi questi metodi sono chiamati dalle classi che svolgono una qualche azione. ad esempio farei una classe db che fa tutte le operazioni e li dentro il metodo per inserire un record in una tabella,
    ad esempio: se devo inserire un utente in anagrafica, lo script che raccoglie i dati chiamera un ipotetico metodo $user->addUser($hashDatiUtente). Il metodo addUSer chiamerà un ipotetico metodo $db->addRecord($hashDati, $tabella), dove $hashDati sarebbe $hashDatiUtente...

    non so se sia il metodo migliore ma ormai sono abituato a fare cosi e vado abbastanza veloce...

    Manuel

    View my profile on LinkedIn
    Ubertini: amo solo te!

  3. #3
    Per quanto riguarda i change request dipende un po' da che metodi utilzzi per lo sviluppo del software ci sono pro e contro sia di quello predittivo ma sopratutto quando l'ambiente dove operi non è molto chiaro rischi sempre di tralasciare qualche cosa...io sto cercando di applicare un metodo adattivo cioè dire sono in una stanza buia e con la pila non vedo oltre 3 cm andiamoci piano e facciamo un passo alla volta.

    Ad ogni modo la seconda parte della tua risposta mi è utile.

    Quello che mi è meno chiaro è che nella mia HashTable avro da una parte i nomi dei campi della tabella e dall'altra i valori giusto? Ma se i nomi cambiano in continuazione ogni volta che mi costruisco questa Hash a mano devo sempre correggere i nomi giusto?

    Sei a conoscenza se questo si può fare in maniera automatica?
    Erebigal

  4. #4
    secondo me non puoi
    o ti basi sui nomi delle colonne o sulla posizione, ma immagino che se cambiano i primi cambieranno anche gli altri



    cmq se progetti prima anche questo problema si risolve

    ciao
    Manuel

    View my profile on LinkedIn
    Ubertini: amo solo te!

  5. #5

    Possibile soluzione

    Ho trovato una possibile soluzione nel framework PEAR
    al link http://www.go-pear.org/manual/en/pac...tobuilding.php

    c'è la spiegazione di come funziona questa classe.....ma non ho capito come si fa a creare il file di descrizione dello schema del DB il "myconfig.ini" dell'esempio per capirsi...

    qualche esperto pear può aiutarmi?
    Erebigal

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.