Ir para conteúdo
Fórum Script Brasil
  • 0

[RESOLVIDO] Problemas com criação de banco via php


Victoralm

Pergunta

Me surgiu a necessidade de criar bancos e tabelas dinamicamente caso estes não existam.

Até aí, sem problemas. O problema aparece quando tento criar a chave estrangeira direto pelo script.

O script roda perfeitamente sem a linha da chave estrangeira, mas preciso que esta seja criada dentro do script...

Por favor, solicito ajuda !!!

RESOLVIDO

Segue abaixo o código já 100% funcional:

<?php
    $con = mysql_connect("localhost", "root", "...");
    if (mysql_select_db("aproj", $con)) {
      echo "Conectado com sucesso!";           
    }else {
      echo "Criando banco...";
      $sql1 = "CREATE DATABASE `aproj`";  
      if ($con) {
        mysql_query($sql1);
        if(mysql_select_db("aproj")){
          $sql2 = "CREATE TABLE usuarios(
                  idusuario int primary key auto_increment,
                  nome varchar(50),
                  email varchar(50),
                  telefone varchar(15),
                  estado varchar(25),
                  cidade varchar(25),
                  cpf varchar(14),
                  funcionario enum('S','N')
                  )";
          $sql3 = "CREATE TABLE suites(
                  idsuite int primary key auto_increment,
                  nome varchar(50),
                  valor double(10,2),
                  ocupacao enum('S','N'),
                  id_usuario int,
                  foreign key(id_usuario) references usuarios(idusuario)
                  )";
          if(mysql_query($sql2) && mysql_query($sql3)){
            echo "<br/>Banco APROJ e suas tabelas USUÁRIO e SUÍTES criados com sucesso!";
          }
        }else{
          echo "<br/>Erro ao criar a tabela...";
        }
      }else {
        echo "<br/>Erro ao criar o banco...";
      }
    }
    ?>

Editado por Victoralm
Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde JaguA, obrigado pela resposta!

Acredito q desta maneira não gere erro no PhpMyAdmin, porque é assim que faço via console.

Mas, como preciso q este banco e suas tabelas sejam criados dinamicamente, imagino que o PhpMyAdmin não seria uma solução...

Ou seria !?

E, caso seja, como posso faze-lo!?

Link para o comentário
Compartilhar em outros sites

  • 0

a questão é testar o seu código e te certeza que ele está funcionando...

crie o código no sql se ele cria sem erro coloque no PHP e de comando de query... inclusive o PhpMyAdmin cria o código PHP para você.

Link para o comentário
Compartilhar em outros sites

  • 0

Boa noite JaguA!!

Muito obrigado pela dica!

Faltava inserir a coluna que seria definida como chave estrangeira, falta de atenção total minha...

A alteração segue como abaixo:

$sql3 = "CREATE TABLE suites(
                  idsuite int primary key auto_increment,
                  nome varchar(50),
                  valor double(10,2),
                  ocupacao enum('S','N'),
                  id_usuario int,  <-- Esta foi a linha que faltou...
                  foreign key(id_usuario) references usuarios(idusuario)
                  )";

Mas, ainda quanto ao PhpMyAdmin... Poderia me passar o endereço de algum tutorial de como criar o código Php através dele !?

Mais uma vez, muito obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

Victoralm, peço desculpa mas eu me equivoquei com esse lance do PhpMyAdmin, pois ao criar uma tabela, (pelo menos no meu aqui) ele não mostra o código, pois na janela SQL do PhpMyAdmin ele mostra um link -> Gerar PHP pode observa em um select ou em alguma inserção feita pelo PhpMyAdmin, de qualquer forma eu tinha para mim que ele mostrava o código quando criava uma tabela e sendo assim era so pedir para Gerar o PHP.

Link para o comentário
Compartilhar em outros sites

  • 0

Apesar de estar resolvido

Segue um link de 1 Apostila basica PhpMyAdmin

link direto para baixar apostila

Apos ter criado no phpmyadmin, o bco, e a tabela.

Selecione a tabela

Click em Exportar, E exporte no formato Sql, isto gerara um arquivo. com extencao sql com o script da tua tabela, com o nome da tua tabela.

Apos isto Abra o wordpad.

Neste tópico aki tem um video. tb de como usar o PhpMyAdmin

http://scriptbrasil.com.br/forum/index.php?showtopic=169653

Editado por Alceu13
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...