Jump to content
Omar~

Na sua opinião o que seria mais viável? Nova TB ou uma única TB maciça?

Recommended Posts

Opa?!

 

Então chegou um projeto em minhas mão e o cliente quer....

Poder acessar o website e criar toda uma área, ao qual conterá sub páginas.

Que serão dividas em:

Cessão = Páginas primárias.

Categoria = Páginas secundárias.

Sub-categoria = conteúdo que será inserido nas Categorias

 

"A mesma coisa desse fórum :smile:"

Pois temos as cessões Q&A DesenvolvimentoDesenvolvimento e Banco de Dados etc...

Dentro delas temos as Html e CSS, Java, Javascript etc...

E dentro dessas temos cada tópico que é uma página também.

 

A questão é o que vocês achariam mais viável dizendo se possível os pós e contras, pois vou fazer uma dessas coisas....

 

  • Uma tabela para armazenar as Cessões e outra tabela para as Categoria.
  • Uma tabela para armazenar as Cessões e toda vez que uma Categoria é criada, também será criado uma nova tabela com o nome da Categoria.

 

Na primeira situação vejo a seguinte coisa, mais pático para manutenção e mais simples de mover uma categoria para outra fica muito mais fácil, entre outros pontos voltados a manutenção futura.

O problema é que vejo no caso, essa mesma tabela de sub vai ficar muito grande e desorganizado o banco de dados.

 

Na segunda questão vejo a questão de organização maior, ficando mais fácil acessar os dados e ganho de rendimento, uma vez que cada leitura do banco de dados terá o alvo somente aquilo que é para ser lido.

Porém é muito mais trabalhoso criar o sistema e de difícil manutenção futura, e também tem o lado que é o bancos que irá ficar atordoado de tabelas.

 

Em todos projetos que trabalhei sempre me apoiei na primeira questão pois não se tratava de algo com uma carga grande de conteúdo como é esse que terei de fazer agora.

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By 1stVieira
      Olá a todos! Estou com uma dúvida em relação a realizar um cadastro no banco de dados (SQL) a partir de um formulário de um projeto.
       
      Possuo duas tabelas, Categoria e Itens, na qual a tabela Itens possui uma FOREIGN KEY com a tabela Categorias.
       
      Na página de Categorias consigo realizar os cadastro das mesmas sem problemas e elas estão sendo aplicadas em um SELECT na página de Cadastro dos Itens. O problema está sendo cadastrar os Itens no Banco de Dados. Estou utilizando PHP Orientado à Objetos
       
      Página de Adição de Pedidos
      <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Adição de Item</title> </head> <body> <div> <a href="modificarCardapio.php" class="link_home"><i class="fa fa-home"></i></a> </div> <div> <div> <h1>Adicionar Itens ao Cardápio</h1> </div> <div> <form action="#" method="POST"> <label>Categoria:</label> <select name="selecionarcat"> <option selected>Selecione a Categoria</option> <?php require_once"../models/conexao.class.php"; require_once"../models/categoriaDAO.class.php"; $catDAO = new categoriaDAO(); $ret = $catDAO->buscarTodasCategorias(); if(count($ret) > 0){ foreach ($ret as $dado){ echo "<option value='".$dado->idcategoria."'>".$dado->descritivo."</option>"; } } ?> </select> <br><br> <a href="addcategoria.php"><input type="button" value="Adicionar nova Categoria"></a> <p> <label>Nome do Item: </label> <input type="text" name="nomeproduto"> </p> <p> <label>Descrição: </label> <input type="text" name="descricao"> </p> <p> <label>Preço: </label> <input type="text" name="preco"> </p> <br> <input type="submit" value="Adicionar"> </form> </div> </div> </body> </html> <?php if($_POST){ require_once "../models/conexao.class.php"; require_once "../models/item.class.php"; require_once "../models/itemDAO.class.php"; $item = new item(null, $_POST["nomeproduto"], $_POST["descricao"], null, $_POST["preco"]); $itemDAO = new itemDAO(); $itemDAO->adicionar($item); header("Location:modificarCardapio.php"); } ?> ItemDAO.php
      <?php class itemDAO extends conexao{ function __construct(){ parent:: __construct(); } function adicionar($item){ $sql="INSERT INTO itens (nomeprod, descricao, preco, id_categoria) VALUES(?, ?, ?, ?)"; try{ $stm = $this->db->prepare($sql); $stm->bindValue(1, $item->getNomeproduto()); $stm->bindValue(2, $item->getDescricao()); $stm->bindValue(3, $item->getPreco()); $stm->bindValue(4, $item->getCategoria()); $stm->execute(); $this->db = null; } catch(Exception $e){ die($e->getMessage()); } } ?> Item.class.php
      <?php class item{ private $iditem; private $nomeproduto; private $descricao; private $categoria; private $preco; function __construct($iditem, $nomeproduto, $descricao, $categoria, $preco){ $this->iditem=$iditem; $this->nomeproduto=$nomeproduto; $this->descricao=$descricao; $this->categoria=$categoria; $this->preco=$preco; } function getIditem(){ return $this->iditem; } function getNomeproduto(){ return $this->nomeproduto; } function getDescricao(){ return $this->descricao; } function getCategoria(){ return $this->categoria; } function getPreco(){ return $this->preco; } function setIditem($iditem){ $this->iditem=$iditem; } function setNomeproduto($nomeproduto){ $this->nomeproduto=$nomeproduto; } function setDescricao($descricao){ $this->descricao=$descricao; } function setCategoria($categoria){ $this->categoria=$categoria; } function setPreco($preco){ $this->preco=$preco; } } ?>  
    • By Wallinson_Viana
      Estou com dificuldades em gravar os dados de um formulário no cPanel da HostGator. No meu servidor local funciona perfeitamente, porém quando subo dá erro.
       
      conn_server.php:
       
      <?php
        $host = "localhost";
        $usuario ="my user";
        $senha ="senha db";
        $db="nome db";
        
      ini_set('default_charset', 'UTF-8');

      $mysqli = new mysqli($host, $usuario, $senha, $db);

      $mysqli->query("SET NAMES utf8");
       
        if ($mysqli->connect_errno)
        echo "Falha na conexão (".$mysqli-connect_errno.") ".$mysqli-connect_error;
      ?>
       
      cadastrar.php:
       
      <?php
        require_once("../server/conn_server.php");
      if (isset($_POST['enviar'])){

              date_default_timezone_set('America/Sao_Paulo');
              $emailn='Não definido';
              $cel='Não definido';
              $service='Não definido';
              $msg='Solicito contato comigo!';
              $date=date('d/m/20y | H:i:s');
              $orc='Não definido';
              $situacao='Pendente';
              $nome=$_POST['nome'];
              $email=$emailn;
              $telefone=$_POST['telefone'];
              $celular=$cel;
              $servico=$service;
              $mensagem=$msg;
              $data=$date;
              $orcamento=$orc;
              $status=$situacao;

              $comando="INSERT INTO mensagens (id,
                nome,
                email,
                telefone,
                celular,
                servico,
                mensagem,
                data,
                orcamento,
                status) VALUES
                      (null, '$nome', '$email', '$telefone', '$celular', '$servico', '$mensagem', '$data', '$orcamento', '$status')";
              $cadastrar=mysqli_query($conn, $comando);
              if ($cadastrar == true) {
                echo "<script>alert('Mensagem enviada com sucesso!');";
                echo "javascript:window.location='../index.php';</script>";
              }
              else {
              echo "<script>alert('Houve um erro ao gravar. O seguinte erro ocorreu->');";
              echo "javascript:window.location='../index.php';</script>";
            }
          }
      ?>
       
      form.html
       
      <form action="controller/solcontato.php" method="post" class="js-validate">
                <div class="card-body p-5">
                  <!-- Input Group -->
                  <div class="mb-4">
                    <label class="h6 small d-block text-uppercase mb-2">
                      Seu nome
                    </label>
                    <div class="js-form-message">
                      <div class="input-group">
                        <input type="text" class="form-control" name="nome" placeholder="Digite seu nome" aria-label="Phone number" aria-describedby="phoneNumber" required
                               data-msg="Por favor, digite o seu nome."
                               data-error-class="u-has-error"
                               data-success-class="u-has-success">
                      </div>
                    </div>
                  </div>
                  <!-- End Input Group -->
                  <!-- Input Group -->
                  <label class="h6 small d-block text-uppercase mb-2">
                    Telefone
                  </label>
                  <div class="js-form-message js-focus-state">
                    <div class="input-group">
                      <div class="input-group-prepend" id="phoneNumber">
                        <span class="input-group-text">+55</span>
                      </div>
                      <input type="text" class="form-control" name="telefone" placeholder="Digite seu telefone" aria-label="Phone number" aria-describedby="phoneNumber" required
                             data-msg="Por favor, digite um numero de telefone válido."
                             data-error-class="u-has-error"
                             data-success-class="u-has-success">
                    </div>
                  </div>
                  <!-- End Input Group -->
                </div>
                <!-- Card Footer -->
                <div class="card-footer py-3 px-5">
                  <div class="d-flex justify-content-end">
                    <button name="enviar" type="submit" class="btn btn-sm btn-primary transition-3d-hover mr-1">Enviar</button>
                    <button type="submit" class="btn btn-sm btn-soft-secondary transition-3d-hover" onclick="Custombox.modal.close();">Cancelar</button>
                  </div>
                </div>
                <!-- End Card Footer -->
              </form>
       
      Se alguém puder me ajudar agradeço.
       
    • By MateusOFCZ
      Olá, estou desenvolvendo meu TCC no Netbeans usando Java, quando estava fazendo as telas em JFrame, percebi que ele cria uma conexão toda hora que acessa uma tela (http://prntscr.com/op1tjc) fazendo com que "desconecte" o usuário que estava logado, gostaria de saber se tem alguma forma de fazer com que toda vez que troca de tela ele continua com a conexão anterior ao invés de criar uma nova, fazendo com que ele desconecte o usuário que estava logado.

       
       
    • By jleofm
      Bom dia  Forum IMaster, Instalei com sucesso o MySQL Community 8.0.17 numa estação de trabalho com sistema operacional Windows 10 Pro 64 bits, entretanto não consigo enxergar da minha estação de trabalho (Windows 10 Pro 64 bits) o servidor MySQL.
      Estou usando o MySQL Workbench 8.0 CE da minha estação de trabalho.
      Alguém sabe me informar se é necessário ter o sistema operacional Windows Server para que seja meu servidor do MySQL?
       
      Desde já obrigado a todos.
    • By jmike936
      Prezados,
       
      Possuo um banco de dados e necessito deixar uma página disponível para quando o usuário entrar com o número do cpf(id), retornar as informações do banco para ele.
      No momento o site está em localhost.
       
      Algum plugin? ou Tema para esse tipo de demanda?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.