--- Sangalli Fabio ha scritto:

> mi sto avvicinando in questi mesi a base e volevo sapere se sia
> possibile
> attibuire ad uno o piu' campi l'opzione UNICO; cioe' avendo dei campi
> contenenti codici avrei bisogno che il databese verificasse che non
> sia gia' stato usato quel valore.

devo ammettere che non conosco base e quindi non so di preciso cosa
intendi per "opzione UNICO".

Per verificare che in una colonna (o insieme di colonne) un valore non
sia stato ripetuto puoi:
* far si che quella colonna sia la chiave primaria della tabella
* far si che quella colonna abbia un indice univoco
* creare un trigger che impedisce l'inserimento in un campo di un
contenuto già esistente in un altro record

Se quella tabella che stai per creare contiene dei codici "univoci" poi
da utilizzare in altre tabelle, allora è consigliabile crearsi una
chiave primaria (o al più un indice univoco) in modo poi da creare
delle foreign key sulle altre tabelle che utilizzano tali codici.

In ogni caso prima di creare le tabelle devi studiare un po' e capire:
* quanti dati conterranno o potranno contenere
* come devono essere utilizzate (una tabella o un insieme di tabelle
deve fornire, oltre che un buon mezzo di immagazzinamento dati, anche
un buon mezzo per ottenere i risultati che vuoi in un tempo
"istantaneo")

Poi è meglio cercare, tenendo conto dei due punti precedenti, di
spezzare le informazioni in più tabelle in modo da evitare ripetizioni
di dati e crearsi una struttura che garantisce la consistenza dei dati
(quindi usare primary e foreign key, indici, ...).

Bisogna anche tenere conto del database che si sta utilizzando e quindi
delle sue caratteristiche e dei suoi limiti.

Se le cose che ho detto non ti sono molto chiare è forse meglio prima
fare un corso di SQL (ce ne sono molti anche on-line) o leggersi il
manuale di utente del proprio db (molte volte contiene le spiegazioni
dettagliate dei vari comandi SQL) ... e poi fare molti esercizi.

Ciao
Davide

Dizionari: http://linguistico.sourceforge.net/wiki
Conoscere il TC: http://www.no1984.org
Strumenti per l'ufficio: http://it.openoffice.org
Sistema operativo: http://www.it.debian.org
Browser: http://www.mozilla.org/products/firefox
Client di posta: http://www.mozilla.org/products/thunderbird
GNU/Linux User: 302090: http://counter.li.org
--
Non autorizzo la memorizzazione del mio indirizzo di posta a chi usa outlook: 
non voglio essere invaso da spam


        

        
                
___________________________________ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Rispondere a