| From | Sent On | Attachments |
|---|---|---|
| André Lima | Feb 16, 2010 2:41 pm | |
| Hildeberto | Feb 17, 2010 1:35 am | |
| André Lima | Feb 17, 2010 5:41 am | |
| Hildeberto | Feb 17, 2010 11:00 am |
| Subject: | RE: [cejug-discussao] MYSQL - FK | |
|---|---|---|
| From: | André Lima (andr...@hotmail.com) | |
| Date: | Feb 17, 2010 5:41:51 am | |
| List: | net.java.dev.cejug.discussao | |
Ok,entendi...não escrevi esse script,também não entendi o por que de 3 fk para o
mesmo campo.Como o MySQL gera esses valores("FKB4...")?
Date: Wed, 17 Feb 2010 10:36:21 +0100 From: htmf...@gmail.com To: disc...@cejug.dev.java.net Subject: Re: [cejug-discussao] MYSQL - FK
Cada foreign key tem seu próprio identificador. Acho que na hora da criação das
mesmas esses identificadores não foram informados e o MySQL teve que gerar tais
identificadores com uma chance mínima de serem repetidos. Outra questão é que
foram criadas três foreign keys para o mesmo campo. Basta uma. O BTree é a forma
como o índice da chave primária será criado. Isso implica em maior velocidade de
busca e inserções mais lentas.
Se você quizer usar esse script depois, sugiro reescrever da seguinte forma:
CREATE TABLE jsf.cidades ( cidade_id int(6) NOT NULL auto_increment,
id_cid_est int(2) NOT NULL,
nome` varchar(60) NOT NULL, PRIMARY KEY USING BTREE (cidade_id))
ENGINE=InnoDB AUTO_INCREMENT=5561 DEFAULT CHARSET=latin1;
CREATE INDEX idx_cidade_estado on cidades (id_cid_est);
ALTER TABLE SECAO ADD CONSTRAINT FK_CIDADE_ESTADO FOREIGN KEY (id_cid_est)
references estados (estado_id) on delete cascade;
2010/2/16 André Lima <andr...@hotmail.com>
Galera,estou com dúvidas no script sql abaixo...sei como se cria uma tabela,mas
não sei como se utiliza foreign keys...o script é mais ou menos intuitivo,mas
não entendi como ele gerou caracteres como esse:FKB46DEEB5104238A4.Também não
conheco o comando USING BTREE.
CREATE TABLE `jsf`.`cidades` ( `CIDADE_ID` int(6) NOT NULL auto_increment,
`id_cid_est` int(2) NOT NULL, `nome` varchar(60) NOT NULL, PRIMARY KEY USING
BTREE (`CIDADE_ID`),
KEY `FKB46DEEB5104238A4` (`id_cid_est`), KEY `FK635EC00F104238A4`
(`id_cid_est`), KEY `FK635EC00FA084FE69` (`id_cid_est`), CONSTRAINT
`FK635EC00F104238A4` FOREIGN KEY (`id_cid_est`) REFERENCES `estados`
(`ESTADO_ID`),
CONSTRAINT `FK635EC00FA084FE69` FOREIGN KEY (`id_cid_est`) REFERENCES
`estados` (`ESTADO_ID`), CONSTRAINT `FKB46DEEB5104238A4` FOREIGN KEY
(`id_cid_est`) REFERENCES `estados` (`ESTADO_ID`)) ENGINE=InnoDB
AUTO_INCREMENT=5561 DEFAULT CHARSET=latin1;
Fique protegido enquanto navega na Internet. Instale o Internet Explorer 8.
-- Hildeberto Mendonça CEJUG Leader http://www.cejug.org http://www.hildeberto.com
_________________________________________________________________ Você sabia que o Windows 7 inicia e desliga mais rápido? Clique e conheça mais. http://www.microsoft.com/brasil/windows7/default.html?WT.mc_id=1539





