Jump to content

Recommended Posts

Olá pessoal bom dia! 

 

Preciso de uma ajuda com um detalhe no banco de dados no caso é postgres v.9.4 , explicando a situação estou fazendo uma manutenção de dados de certos logs que gero e tenho exemplo uma tabela que é envios.envio_contato_log_status ela tinha mais 220GB só nela eu limpei ficou de boa (agora esta zerado e nem lista abaixo), só que ao rodar o código que mede o tamanho das tabelas vejo que tenho uma de 45GB informados como consigo apagar esse cara envios.envio_contato_log_status_pkey (chave primaria da tabela acima referida envios.envio_contato_log_status) não entendi o banco ele armazena dados nas chaves primarias, indexadores, etc...  Minha duvida se tem algo que permite eu excluir esses dados, no caso sabemos que essa tabela não é mais usada.

Mais queria manter a estrutura do campos mesmo que vazia por enquanto e eliminar apenas esses 45GB que não tenho ideia de como remover esse kara.

 

image.png.22b5d8b00a18b62dd76fd7f28c3f5bd0.png

Share this post


Link to post
Share on other sites

Pessoal desculpa ter aberto o chamado mais acho que ja descobri acabei de rodar um TRUNCATE TABLE e resolveu agora não tenho os 45GB, ate sumiu quando rodo para ver o tamanho de todo o meu banco, pelo o que entendi que o TRUNCATE elimina dados de transações que eram os 45GB e mantem toda a estrutura da tabela intacta(indexadores, FK, PK).  

Então resumindo para apagar todos os dados de uma tabela de forma limpa e rapida sem deixar vestígios use Truncate; 

Para poder selecionar dados com where use Delete, isto é, caso não queira apagar tudo, pois o truncate não aceita parametros adicionais (WHERE, LIMIT, etc)

 

image.png.b94063c702db3d88eb668ebed3688a29.png

 

Deixo os links que me ajudaram abaixo: 

 https://gustavomaiaaguiar.wordpress.com/2010/07/21/truncate-versus-delete-uma-explicacao-mais-detalhada/

http://www.oraclehome.com.br/2013/08/14/diferencas-entre-truncate-table-drop-table-ou-delete-from/

image.png

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 makinh0
      <table width="90%" border="0" align="center" cellpadding="5" cellspacing="0" style="margin-top:10px;">
      <tr>
        <td align="center" bgcolor="<?php echo $background ?>"><table width="100%" border="0" align="center" cellpadding="5" cellspacing="0" style="margin-top:10px;">
          <tr>
            <td width="48%" align="left" bgcolor="#3399FF"><strong>Produto</strong></td>
            <td width="16%" align="center" bgcolor="#3399FF"><strong>Hora</strong></td>
            <td width="19%" align="center" bgcolor="#3399FF"><strong>Mesa</strong></td>
            <td width="9%" align="left" bgcolor="#3399FF"><strong>Garçom</strong></td>
            <td width="8%" align="center" bgcolor="#3399FF"><strong>Ação</strong></td>
             <td width="8%" align="center" bgcolor="#3399FF"><strong>Observações</strong></td>
          </tr>
          <?php 
        $sql = mysql_query("SELECT * FROM tbl_carrinho INNER JOIN garcon ON tbl_carrinho.idGarcon = garcon.idGarcon WHERE destino='1' AND status = '0' ORDER BY id DESC") or die(mysql_error());
        while($ver = mysql_fetch_array($sql)){
          $background = (++$i%2) ? '#FFFFF' : '#F2F2F2';
          $feito = $ver['feito'];
        ?>
          <tr>
            <td bgcolor="<?php echo $background ?>"><?php echo $ver['nome']; ?></td>
            <td align="center" bgcolor="<?php echo $background ?>"><?php echo $ver['time']; ?></td>
            <td align="center" bgcolor="<?php echo $background ?>"><?php echo $ver['id_mesa'] ?></td>
            <td bgcolor="<?php echo $background ?>"><?php echo $ver['nomeGarcon'] ?></td>
              <td align="center" bgcolor="<?php echo $background ?>"><?php echo $ver['id_mesa'] ?></td>
            <td bgcolor="<?php echo $background ?>">
       
       
      Sistema restaurante; gente precisava fazer a tela de observacoes , tipo na tela cozinha aparece produto,hora,mesa,garcom e acao, queria por observacao para a cozinha receber como o cliente quer? alguem tem ideia?obg
    • By vinihhylian0103
      Boa noite, gostaria de saber tem alguma maneira de prevenir a inclusão de registros do mesmo valor na minha tabela. O código é o seguinte:
       
       
       
      <?php include_once('conexao.php'); $nome=$_POST['nome']; $sobrenome=$_POST['sobrenome']; $data=$_POST['data_nasc']; $rm=$_POST['rm']; $curso=$_POST['curso']; $email=$_POST['email']; $senha=$_POST['senha']; $sqlinsert = "insert into usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) values('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')"; $resultado = @mysqli_query($conexao,$sqlinsert); if(!$resultado) { die('Query inválida: '. @mysqli_error($conexao)); } else { echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>"; header('Location: index.html'); } mysqli_close($conexao); ?>
          
       
    • By BetimG
      E ae pessoal tudo tranquilo?
       
      Preciso de uma ajuda pra criar um select na pagina de edição de informações, mais precisamente no CURSOS, pois tenho mais de uma opção de curso, não consigo criar o select ali, normalmente as informações ficam fora da opção, segue imagem e as linhas
       
      <form method = "POST" action="">
      <h4>Atualizar/Excluir Alunos </h4><br><br>
      <?php
      include "conexao.php";

      $op = $_GET['operacao'];
      $ra = $_GET['ra'];

      $sql= mysqli_query($conexaobd,"SELECT a.ra,a.nome,c.nome as curso,a.datanasc FROM alunos a INNER JOIN cursos c ON a.curso = c.codcurso where a.ra=$ra");
      echo "<form method=POST action=''>
              ";
                  
      while($linha = mysqli_fetch_assoc($sql))
      {
      $ra = $linha['ra'];
      $nome = $linha ['nome'];
      $curso = $linha ['curso'];
      $datanasc = $linha ['datanasc'];
                  
      if($op==1) //editar
          {
          echo"<td>RA</td><br><input type=text name=txtra value=$ra><br><br>
          <td>Nome</td><br><input type=text name=txtnome value=$nome><br><br>
          <td>Curso</td><br><input type=text name=txtcurso value=$curso readonly><br><br>
          <td>DataNasc</td><br><input type=date name=txtdatanasc value=$datanasc><br><br>
          <br>
                <input type=submit value='EDITAR'>";
          }
      else //excluir
          {
          echo "<input type=text name=txtra value=$ra readonly>
          <input type=text name=txtnome value=$nome readonly>
          <input type=text name=txtcurso value=$curso readonly>
          <input type=date name=txtdatanasc value=$datanasc readonly>
          
                <input type=submit value='EXCLUIR'>";
          }
      }
      echo "</form>";
      mysqli_close($conexaobd);
      ?>
      </center>
      <?php
      if(count($_POST)>0)
      {
      include "conexao.php";
      $ra=$_POST['txtra'];
      $nome=$_POST['txtnome'];
      $curso=$_POST['txtcurso'];
      $datanasc=$_POST['txtdatanasc'];
      if($op==1)
      $sql="UPDATE alunos SET ra=$ra,nome='$nome',datanasc='$datanasc'";
      else
          
      $sql="DELETE from alunos where ra=$ra";
      $rs=mysqli_query($conexaobd,$sql);
      if($op==1)
          echo"<script language='javascript' type='text/javascript'>alert('Dados atualizados com sucesso!');window.location.href='alunos.php';</script>";
      else
          echo"<script language='javascript' type='text/javascript'>alert('Dados deletados com sucesso!');window.location.href='alunos.php';</script>";
      mysqli_close($conexaobd);
      }
      ?>
      </form>
       

    • By Anonimus
      Boa Tarde,
      Quero saber como eu posso cadastrar produtos para um determinado usuário, e no momento em que ele efetuar o login, irá consultar os produtos cadastrados no id dele.
      Muito Obrigado.
    • By ryancartola
      Olá, estou fazendo um trabalho para meu curso e me surgiu uma dúvida .
      Montei o crud e até agora tenho tudo funcionando, mas meu professor nos pediu para adicionar o campo Visualizar e visualizar assim, apenas o dado de uma pessoa. Ou seja, ao clicar em visualizar preciso ter como resultado os dados de apenas uma pessoa e não de todas como estou vendo ( vê-se nas imagens, imagem 2 que aparece ao clicar em qualquer visualizar da página index). Alguém me ajuda?
      Meu codigo de visualizar: 
       
      <HTML>
      <?php
      //including the database connection file
      //include_once("classes/Crud.php");
      include_once "Crud.php" ;
      $crud = new Crud();
       
      //fetching data in descending order (lastest entry first)
      $query = "SELECT * FROM infracao ORDER BY codigo DESC";
      $result = $crud->getData($query);
      //echo '<pre>'; print_r($result); exit;
          function get_post_action($codigo) { 
              $params = func_get_args(); 
              foreach ($params as $codigo) { 
                  if (isset($_POST[$codigo])) { 
                      return $codigo; 
                  } 
              } 
          }    
      $servername = "localhost";
      $database = "test";
      $username = "root";
      $password = "";
      // Criando conexão
      $conn = mysqli_connect($servername, $username, $password, $database);
      // Checando conexão
      if (!$conn) {
            die("Connection failed: " . mysqli_connect_error());
      }
       
      echo "<h2>Sucesso - Conectado ao banco</h2>";
       
      ?>
      <!DOCTYPE html>
      <html>
      <head>    
          <title>Página principal</title>
      </head>
       
      <body>
          <table width='80%' border=0>
       
          <tr bgcolor='#CCCCCC'>
              <td>Nome do condutor</td>
              <td>CNH do condutor</td>
              <td>Descrição da infração</td>
              <td>Pontos da infração</td>
          </tr>
          
          <?php 
          foreach ($result as $key => $res) {       
              echo "<tr>";
              echo "<td>".$res['nome_condutor']."</td>";
              echo "<td>".$res['cnh']."</td>";
              echo "<td>".$res['desc_infracao']."</td>";
              echo "<td>".$res['ponto_infracao']."</td>";  
                      
          }
          
          ?>
          
      </table>
      </body>
      </html>


×

Important Information

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