Discussione:
relazioni e integrità referenziale con mysql
(troppo vecchio per rispondere)
Newbie
2006-07-25 14:33:20 UTC
Permalink
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.

Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?

Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Giuseppe Maxia
2006-07-25 14:50:51 UTC
Permalink
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON DELETE CASCADE" e "ON UPDATE CASCADE"

vedi il manuale:
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html

e qualche esempio:
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html

ciao
gmax
--
_ _ _ _
(_|| | |(_|>< The Data Charmer
_|
http://datacharmer.org/
Newbie
2006-07-25 14:57:18 UTC
Permalink
Post by Giuseppe Maxia
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON DELETE CASCADE" e "ON UPDATE CASCADE"
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html
ciao
gmax
quindi sono cose che non si possono fare attraverso phpmyadmin?
o semplicemente non si setta niente in phpmyadmin, ma si creano solo
sulle varie chiave primaria e chiave esterna
e poi per elmininazione e modifica si fa attraverso le query apposite
[...] le clausole "ON DELETE CASCADE" e "ON UPDATE CASCADE" [...]
come mi hai scritto tu...?
grazie per i link e l'aiuto...
Giuseppe Maxia
2006-07-25 15:06:57 UTC
Permalink
Post by Newbie
Post by Giuseppe Maxia
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON
DELETE CASCADE" e "ON UPDATE CASCADE"
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html
ciao
gmax
quindi sono cose che non si possono fare attraverso phpmyadmin?
o semplicemente non si setta niente in phpmyadmin, ma si creano solo
sulle varie chiave primaria e chiave esterna
e poi per elmininazione e modifica si fa attraverso le query apposite
[...] le clausole "ON DELETE CASCADE" e "ON UPDATE CASCADE" [...]
come mi hai scritto tu...?
grazie per i link e l'aiuto...
phpmyadmin e' molto grezzo per queste cose.
Prova MySQL Workbench
http://dev.mysql.com/downloads/workbench/1.0.html

a documentazione e' molto ridotta, ma l'interfaccia e' abbastanza facile
da capire.

Uno strumento piu' completo e affidabile (ma commerciale) e' DeZign for Databases (www.datanamic.com)
che e' quello che uso io di solito quando creo database complicati. Per quelli semplici, faccio
direttamente a mano.

Ciao

gmax
--
_ _ _ _
(_|| | |(_|>< The Data Charmer
_|
http://datacharmer.org/
Newbie
2006-07-25 15:02:05 UTC
Permalink
Post by Giuseppe Maxia
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON DELETE CASCADE" e "ON UPDATE CASCADE"
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html
ciao
gmax
ehmmm vista la mia poca conoscenza dell'inglese..non è che hai qualche
risorsa in ita... :P
Giuseppe Maxia
2006-07-25 15:08:52 UTC
Permalink
Post by Newbie
Post by Giuseppe Maxia
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON
DELETE CASCADE" e "ON UPDATE CASCADE"
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html
ciao
gmax
ehmmm vista la mia poca conoscenza dell'inglese..non è che hai qualche
risorsa in ita... :P
Puoi scegliere:

- Un corso di inglese?
- una consulenza in italiano?

Ma ti viene a costare un po' ... :)

ciao
gmax
--
_ _ _ _
(_|| | |(_|>< The Data Charmer
_|
http://datacharmer.org/
Newbie
2006-07-25 15:11:53 UTC
Permalink
Post by Giuseppe Maxia
Post by Newbie
Post by Giuseppe Maxia
Post by Newbie
Scusate l'ignoranza... ma qualcuno mi può dare una dritta...
Ho sempre usato DB come access o sqlserver e ora sto tentando di usare
mysql.
Per semplicità uso phpmyadmin per la gestione e creazione dei DB... ma
non capisco come si gestiscono le relazioni... come si creano...
Ho tentato di crearle... ma giuro non capisco.
Come si fa a fare le relazioni in modo che avvenga in automatico
l'eliminazione o la modifica dei campi correlati?
Ho letto in giro qualcosa..ma non ne esco.. non capisco.. aiutooooo dove
sta l'integrità referenzialeeee
Devi usare il motore InnoDB, che gestisce integrita' referenziale e transazioni.
Per l'eliminazione o modifica automatica devi usare le clausole "ON
DELETE CASCADE" e "ON UPDATE CASCADE"
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-foreign-keys.html
http://dev.mysql.com/doc/refman/5.0/en/example-foreign-keys.html
ciao
gmax
ehmmm vista la mia poca conoscenza dell'inglese..non è che hai qualche
risorsa in ita... :P
- Un corso di inglese?
- una consulenza in italiano?
Ma ti viene a costare un po' ... :)
ciao
gmax
mmm mi sa che dovrò studiare inglese

Loading...