Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

danielvlopes

PHP com Mysql PHPmyAdmin

Recommended Posts

Olá pessoal, não sei se minha duvida é mais propria da seção de mysql ou de php. Estou desenvolvendo um sistema complexo onde tenho um banco cheio de relacionamentos (fiz o diagrama do banco no enterprise architect) exportei o diagrama para um arquivo sql, importei no phpmyadmin. Nunca precisei de fazer relacionamento utilizando o mysql mas já ouvi falar que as tabelas tem que ser innodb, só que no meu script gerado não tem nada disso e não sei onde acho no phpmyadmin onde converto minhas tabelas para innodb. Gostaria de saber se vou ter que fazer os relacionamentos na mão no php mesmo ou se tem alguma forma de fazer isso usando o phpmyadmin.Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta visualizar a estrutura da tabela, clicar em "Operações" (se eu phpmyadmin está em português) e descer a tela até Storage Engines e modificar do padrão MyIsam, para Innodb.Só uma coisa: NÃO é obrigatório ser innodb para se fazer relacionamentos.até.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola flavia, obrigado pela dica no phpmyadmin. Testei os esquemas sobre innodb e myisam e realmente relacionamento e foreign keys, constraints em tabelas do tipo myisam não servem para nada alem de documentação, já em innodb ele funciona relacionamentos e restrict, cascade e etc.

 

Da uma olhada neste artigo e neste tópico aqui do forum:

http://www.devmedia.com.br/articles/viewco...mp=1966&hl=

http://forum.imasters.com.br/index.php?s=&...st&p=807409

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente fazer um delete cascade... ou tente estabelecer um relação 1 -> 0..* e cadastra algo na tabela onde a foreign é a primary key da tabela pai sem a primary key da tabela pai existir, você vai perceber que o cadastro é realizado da mesma forma. Depois da uma consultada no manual do mysql, no proprio manual diz que myisam não tem integridade referencial.

 

Leia este artigo:

http://dev.mysql.com/tech-resources/articl...reign-keys.html

 

Mas é claro, você pode fazer o relacionamento na mão... quando cadastra uma id na tabela pai, você vai na tabela filha e cadastra ela também. Mas isso não integridade referencial nativa do banco, isso é você fazendo a integridade funcionar por código.

 

Sua tabela pode ter 1 ou 1 milhão de registros que das duas formas vai funcionar, mas na minha opnião a integridade do banco é muito melhor de usar, mas tem muita gente que descorda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sua tabela pode ter 1 ou 1 milhão de registros que das duas formas vai funcionar, mas na minha opnião a integridade do banco é muito melhor de usar, mas tem muita gente que descorda.

Boa noite amigo, estou ha muito tempo buscar esta informação e nao consigo. Aqui no meu phpmyadmin não tem a opção que a mina fala acima, mas eu me viro na raça aqui. Me ajude por favor.

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sua tabela pode ter 1 ou 1 milhão de registros que das duas formas vai funcionar, mas na minha opnião a integridade do banco é muito melhor de usar, mas tem muita gente que descorda.

Boa noite amigo, estou ha muito tempo buscar esta informação e nao consigo. Aqui no meu phpmyadmin não tem a opção que a mina fala acima, mas eu me viro na raça aqui. Me ajude por favor.

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.