Como gravar um enum no banco de dados com JPA e postman

Estou criando um cadastro de produtos, e quando passo pelo Postman o JSON de meu produto para ser gravado, o seu tipo está sendo salvo como NULL.

Os tipos dos produtos são um enum, vou colocar abaixo o código que tentei utilizar para gravar os tipos. Estou fazendo algo de errado? Devo passar o JSON de outra forma? Agradeço pela ajuda

Código do Enum :

public enum TipoProduto {      INFORMATICA(1, "informatica"), ELETRONICOS(2, "eletronicos"), CAMA(3, "cama"), MESA(4, "mesa"), BANHO(5, "banho"), CALCADOS(6, "calcados");       private String descricao;     private Integer codigo;      private TipoProduto(Integer codigo, String descricao) {         this.codigo = codigo;         this.descricao = descricao;     }      public String getDescricao() {         return descricao;     }      public Integer getCodigo() {         return codigo;     } } 

Forma como estou tentando passar o JSON no POSTMAN:

{     "nome": "Notebook",     "TipoProduto": 1,     "valor": 1300.00,     "cor": "Cinza Fosco",     "especificacoes": "8GB RAM, i7, 256GB" } 

Como faço para datar todos os registros do meu banco mysql sendo que o usuário não cadastrou a data

Boa tarde,tenho um pequeno banco onde nele é feito cadastro de várias pessoas, mas infelizmente o usuário não colocou a data na hora de registrar, e o mesmo precisa das datas que foi feito o cadastro com muita urgência, gostaria de saber se existe algum jeito de saber as datas que foi feito o registro, se existe alguma outra maneira.

Eu tentei usar esse comando como exemplo: "select TABLE_NAME, CREATE_TIME from information_schema.TABLES where TABLE_SCHEMA =''", mas ele mostra somente a data da última atualização na tabela, quero saber a data de cada registro.

Conto com a ajuda de vocês, muito obrigado. (:

Mostrar dados do banco de dados na pagina

Estou com problemas para mostrar os dados do banco na pagina

Mensagens de erro: inserir a descrição da imagem aqui

<?php 

$ host = “localhost”;

$ db = “faa”;

$ user = “root”;

$ pass = “”;

// conecta ao banco de dados

$ con = mysqli_connect($ host, $ user, $ pass) or trigger_error(mysql_error(),E_USER_ERROR);

// seleciona a base de dados em que vamos trabalhar

mysql_select_db($ db, $ con);

// cria a instrução SQL que vai selecionar os dados

$ query = sprintf(“SELECT id, nome, preco, descricao, download FROM projetos”);

// executa a query

$ dados = mysql_query($ query, $ con) or die(mysql_error());

// transforma os dados em um array

$ linha = mysql_fetch_assoc($ dados);

// calcula quantos dados retornaram

$ total = mysql_num_rows($ dados);

?>

não esta inserindo os dados no banco via ajax e php

alguma coisa aconteceu eu n sei o que foi simplesmente parou de enviar os dados para banco

$  ("#tipo_cad").submit(function(e) {         var url2 = "mostra/mostra_cad_tipo.php";         var url = "insere/insere_tip_prod.php";            $  .ajax({                type: "POST",                url: url,                data: $  ("#tipo_cad").serialize(),                success: function(data)         {                     $  ("#mostra_cad_prod").fadeOut(800, function(){                     $  ("#mostra_cad_prod").load(url2).fadeIn().delay(500);                    });                }               });           e.preventDefault();// esse comando serve para previnir que o form realmente realize o submit e atualize a tela.     }); 

essa é a pagina que insere no banco

<?php require_once('../Connections/conn2.php'); ?>    <?php $  tipo_prod = $  _POST['tipo_prod']; $  id_tip = $  _POST['id_tip'];        if(isset($  _FILES['arquivo'])){     $  extensao = strtolower(substr($  _FILES['arquivo']['name'], -4)); //pega a extensao do arquivo     $  variavel = ($  _POST['tipo_prod']);  $  variavel_limpa = strtolower( preg_replace("/[ -]+/", "-", strtr(utf8_decode(trim($  variavel)), utf8_decode("áàãâéêíóôõúüñçÁÀÃÂÉÊÍÓÔÕÚÜÑÇ"),"aaaaeeiooouuncAAAAEEIOOOUUNC-")) );      $  novo_nome = "$  variavel_limpa-padrao" . $  extensao; //define o nome do arquivo      $  diretorio = "../upload/"; //define o diretorio para onde enviaremos o arquivo     move_uploaded_file($  _FILES['arquivo']['tmp_name'], $  diretorio.$  novo_nome);      $  result = $  conn1->query("SELECT * FROM cad_prodrutos_tipo_prod WHERE tipo_prod = '$  tipo_prod' LIMIT 1");  var_dump($  result);  if ($  result->num_rows  > 0) {        echo "    <div id=\"sucess-tip\" class=\"alert alert-danger\" role=\"alert\" style=\"position: absolute; \n"; echo "top: 0; \n"; echo "left: 0; \n"; echo "z-index: 10; \n"; echo "padding:5px; \n"; echo "width:99%;\n"; echo " position: fixed; \">\n";     echo "<a class=\"close\" data-dismiss=\"alert\" href=\"#\">×</a>"; echo "  <center><h1 class=\"alert-heading\">Categoria ja existente!</h1></center>\n"; echo "  <hr>\n"; echo "  <p class=\"mb-0 text-center\">Verifique abaixo as categorias existentes!</p>\n";  echo "</div>";    }       else{   $  sql = "INSERT INTO cad_prodrutos_tipo_prod VALUES";     $  sql .="('$  id_tip','$  tipo_prod','$  novo_nome')";      if ($  conn1 ->query($  sql) === true){          echo "    <div id=\"sucess-tip\" class=\"alert alert-success\" role=\"alert\" style=\"position: absolute; \n"; echo "top: 0; \n"; echo "left: 0; \n"; echo "z-index: 10; \n"; echo "padding:5px; \n"; echo "width:99%;\n"; echo " position: fixed; \">\n"; echo "<a class=\"close\" data-dismiss=\"alert\" href=\"#\">×</a>";  echo "        <center><h1 class=\"alert-heading\">Categoria de produto cadastrado com sucesso!</h1></center>\n"; echo "</div>\n";      } else {         echo "erro:". $  sql . "<br>" . $  conn1->error;     }  } }  $  conn1->close();   ?> 

Verificar se o nome já está cadastrado no Banco de Dados

Está é uma tela de cadastro de Mangáka, então se eu digito um nome ele é adionada sem problemas, porém eu quero verificar se já existe algum registro com esse nome.

Tabela:

create table tblMangaka( idMangaka int(20) auto_increment primary key, Mangaka varchar(500)  ); 

Código C#, seria no começo que faria a verificação, se texto do txtNome já está inserido na tabela tblMangaka.

      strMysql = "insert into dbMangas.tblMangaka (Mangaka)values(@Mangaka);";                  MySqlCommand comando = new MySqlCommand(strMysql, con);                 comando.Parameters.AddWithValue("@Mangaka", txtNome.Text);                  try                 {                     con.Open();                      comando.ExecuteNonQuery();                  }                 catch (Exception erro)                 {                     MessageBox.Show("Ocorreu um erro:\n" + erro);                  }                 finally                 {                     MessageBox.Show("Mangáka Cadastrado!", "Mangáka", MessageBoxButtons.OK);                     txtNome.Clear();                     txtNome.Focus();                     con.Close();                      inserirCmbMangaka();                  }     

Gerenciamento de usuário no Banco de Dados MYSQL

tudo tranquilo ?

Andei dando uma estudada com mysql, e veio em mente o questionamento sobre o acesso de usuários ao sistema do banco de dados. Verifiquei e aprendi a realizar a criação , alteração de usuários, além de dar privilégios, tanto pelo cmd quanto pela própria ferramente que administra o mysql, o phpmyadmin ou workbreanch que uso aqui na máquina. Aí fica minhas dúvidas:

1- De que adianta eu criar usuários, dar privilégios, etc, se toda vez que entro no phpmyadmin ou workbeanch sempre entra pelo host principal. Será que preciso alterar algo para que ao realizar o acesso na ferramente peça o usuário e senha?

2- É normal ao acessar a ferramente que gerencia o mysql mostrar todos os bancos criados? Sei que isso deve ser por causa do host, mas ao realizar o procedimento da dúvida 1 de acordo com o privilégio que eu der irá aparecer todos os bancos também? Ou só os que eu disponibilizar para o usuário?

3- Talvez não cheguei a ver, ou seja feito com triggers, não sei, kk. Mas gostaria de saber se tem como salvar algum tipo de registro específico para quando algum usuário fizer algo no banco, ou tabela, etc… Tipo um registro de atividades.

Enviar múltiplos arquivos por um , recebê-los no PHP e armazená-los no banco de dados

Tenho um formulário no qual consigo enviar um arquivo, por um campo file, e armazená-lo no banco de dados.

Porém, tenho a necessidade de que seja possível o usuário enviar mais de um arquivo pelo formulário e armazená-los no banco de dados.

Com um arquivo só eu já consigo, utilizando Ajax/jQuery e PHP. Porém não consigo fazer com múltiplos arquivos.

Segue abaixo meu código para vocês entenderem melhor o meu problema.

//CÓDIGO PARA PREENCHIMENTO DA LISTA COM OS DADOS DA PESQUISA  $  (document).ready(function() {        $  ('#formulario-atividade-extra-cliente').submit(function(e) {         e.preventDefault();         var formulario_extra = $  (this);         var retorno = inserirFormulario(formulario_extra);        });          function inserirFormulario(dados) {           arquivo = $  ("#arquivo-cliente");         arquivo = arquivo[0];         file = arquivo.files;         file = file[0];         // Apenas 2MB é permitido         if (file != undefined) {           if (file.size > 2 * 1024 * 1024) {             alert("Arquivo excede os 2 Megas");             return false;           }         }          var formul = $  ('#formulario-atividade-extra-cliente')[0];         var data = new FormData(formul);         $  .ajax({           type: "POST",           enctype: 'multipart/form-data',           url: "../banco/banco-crm/pagina-atividade-extra-cliente/update-cliente.php",           data: data,           processData: false,           contentType: false,           cache: false,           timeout: 600000,           }).done(function(data) {            if (data == "atividadecriadacomsucesso") {             $  ('#modal-confirmacao').modal('show');              //Limpar o formulário             $  ('#formulario-atividade-extra-cliente').each(function() {               this.reset();             });            } else {             $  ('#modal-negacao').modal('show');             console.log(data);              //Limpar o formulário             $  ('#formulario-atividade-extra-cliente').each(function() {               this.reset();             });            }           }).fail(function() {           alert("Ativou o fail do AJAX");          }).always(function(data) {           console.log(data);          });        }
<form class="pt-3 mt-3 " id="formulario-atividade-extra-cliente" enctype="multipart/form-data">    <div class="form-group row">      <label class="col-sm-4 col-form-label" for="atividade-cliente">Atividade</label>     <div class="col-sm-4">       <select class="form-control form-control-sm" name="atividade-cliente" id="atividade-cliente" required>         <option value=""></option>        </select>     </div>   </div>    <!-- CAMPO QUANTIDADE DE PROCESSOS -->   <div class="form-group row">     <label class="col-sm-4 col-form-label" for="quantidade-processos-cliente">Nº de Processos: </label>      <div class="col-sm-4">       <input class="form-control form-control-sm" type="number" name="quantidade-processos-cliente" id="quantidade-processos-cliente" min="1" max="20" maxlength="40" value="1" required>     </div>   </div>    <!-- LINHA -->     <!-- CAMPO DETALHES -->    <div class="form-group row" id="destalhes">     <label class="col-sm-4 col-form-label" for="destalhes-atividade-cliente">Detalhes</label>     <div class="col-sm-8">       <textarea class="form-control form-control-sm" name="detalhes-atividade-cliente" id="detalhes-atividade-cliente" style="resize:none" maxlength="500" rows="7" placeholder="Descreva detalhes sobre a atividade que será realizada"></textarea>     </div>   </div>    <!-- LINHA -->     <!-- Campo anexar Arquivos -->   <div class="form-group row">     <label class="col-sm-4 col-form-label" for="arquivo-cliente">Enviar Arquivos: </label>     <div class="col-sm-4">       <input class="form-control form-control-sm" type="file" name="arquivo-cliente" id="arquivo-cliente" multiple>     </div>   </div>    <!-- LINHA -->    <div class="form-group row float-right">     <input name="criar-atividade-extra" id="criar-atividade-extra" class="btn btn-sm btn-primary" type="submit" value="Criar Atividade">   </div> </form>   <!-- Código PHP COM O CÓDIGO DE RECEBIMENTO DOS DADOS DO FORM (update-cliente.php -->  <?php 	 	 	session_start();  	require_once ("../../conexao/conexao-com-banco.php"); 	require_once("../../notificacao/notificacao-menu.php"); 	require_once("envia-email-cliente.php"); //Arquivo com a função de enviar email 	 			 	date_default_timezone_set('Etc/GMT+3'); 	setlocale(LC_ALL, "", "pt_BR.utf-8"); 	 	//UPLOAD DE ARQUIVO  VINDO DO FORMULÁRIO 	if(!empty($  _FILES["arquivo-cliente"]["tmp_name"])) 	{ 		$  file_tmp = $  _FILES["arquivo-cliente"]["tmp_name"]; //NOME DO ARQUIVO NO COMPUTADOR 		$  file_name = $  _FILES["arquivo-cliente"]["name"]; 		$  file_size = $  _FILES["arquivo-cliente"]["size"];  		$  file_type = $  _FILES["arquivo-cliente"]["type"]; 		$  partes = explode(".", $  file_name); 		$  extensao = end($  partes);  		$  binario = file_get_contents($  file_tmp); // evitamos erro de sintaxe do MySQL 		$  binario = mysqli_real_escape_string($  conecta, $  binario); 		//FIM DO UPLOAD DE ARQUIVO 	}	 	 	 	 	//PREENCHE AS VARIÁVEIS COM OS DADOS VINDOS DOS CAMPOS DO FORMULÁRIO 	 	$  atividade_cliente = filter_input(INPUT_POST, 'atividade-cliente', FILTER_SANITIZE_STRING);  	$  quantidade_processos_cliente = filter_input(INPUT_POST, 'quantidade-processos-cliente', FILTER_SANITIZE_STRING);  	$  detalhes_atividade_cliente   = filter_input(INPUT_POST, 'detalhes-atividade-cliente', FILTER_SANITIZE_STRING);  	$  departamento_atividade_cliente = filter_input(INPUT_POST, 'departamento-atividade', FILTER_SANITIZE_STRING);  	 	$  designou_atividade   = "CLIENTE"; 	$  cod_cliente = $  _SESSION["COD"]; 	$  tributacao_cliente = $  _SESSION["TRIBUTACAO"]; 	$  empresa_cliente = $  _SESSION["EMPRESA"]; 	 	 	//As duas linhas abaixo, pegando a data de hoje + 2 dias 	$  data = date("Y-m-d"); 	$  data_de_vencimento =  date('Y-m-d', strtotime("+2 days",strtotime($  data)));  	  	 	//CONFIGURANDO A VARIÁVEL CONFERENCIA 	 	if(!empty($  _FILES["arquivo-cliente"]["tmp_name"])) 	{ 		$  conferencia_cliente = "A CONFERIR"; 		$  possui_arquivos_cliente = "S"; 	} 	else 	{ 		$  conferencia_cliente = "NÃO POSSUI ARQUIVO"; 		$  possui_arquivos_cliente = "N"; 	} 	 	$  insert_atividade_cliente = "INSERT INTO tbl_atividades(COD, EMPRESAS, TRIBUTACAO, RESPONSAVEL, DESIGNADOR, TIPO_ATIVIDADE, DT_VENCIMENTO, STATUS, FEEDBACK, EXTRA_URGENTE_COMUM, VISUALIZADO, ATUALIZADO, ARQUIVO, DEPARTAMENTO, EMPRESA_ORIGEM, CONFERENCIA, QNTD_PROCESSOS)  	VALUES('$  cod_cliente','$  empresa_cliente','$  tributacao_cliente','NAO ATRIBUIDO','$  designou_atividade','$  atividade_cliente','$  data_de_vencimento','PENDENTE','$  detalhes_atividade_cliente','E','N','S','$  possui_arquivos_cliente','$  departamento_atividade_cliente','NAO ATRIBUIDO','$  conferencia_cliente','$  quantidade_processos_cliente')"; 	$  result_insert_atividades_cliente = mysqli_query($  conecta, $  insert_atividade_cliente); 	  	 ?>

Tentei reduzir o código pra só deixar amostra a parte que realmente interessa. Obrigado!

Criação de banco de dados MySQL

Olá!

Estou iniciando com banco de dados MySQL, e gostaria de tirar umas dúvidas. Andei dando uma pesquisada mas mesmo assim não consegui sanar essas dúvidas. Seriam elas:

1- Observei que na criação da tabela tem uma ENGINE – InnoDB, para que serve isso?

2- Tem algum padrão a se seguir na criação do banco de dados e das suas tabelas no MySQL? Padrão esses como, setar o charset, colocar esse ENGINE nas tabelas, etc, para que futuramente não sofra/ocorra algum problema caso necessite realizar algo que não foi setado no início da criação do banco de dados.

3- Em relação ao Backup e restauração. É um procedimento feito via programação de acordo com a linguagem que está se utilizando ou é feito na máquina do qual está localizado o servidor do MySQL?

3- Se possível tiver mais algumas dicas, opiniões para manter o banco de dados consistentes, estou aceitando 🙂