MYSQL PERDA DE DADOS

TIAGO007 25/03/2017 04:13:02
#472747
Pessoal, estou com problema em um cliente onde perde dados de tabelas no mysql, engraçado que o campo id nao pula, ele se auto numera, alguém já viu algo parecido, minhas tabelas são InnoDB, e o auto commit esta ativado,
ADILSOO 25/03/2017 15:42:00
#472759
Resposta escolhida
Perde dados?
Em que momento?
Programa fechado?
Rodando?

Tipo hoje tem amanhã não tem mais?

Ou

Tipo ta fazendo alguma coisa e some?
TIAGO007 25/03/2017 19:39:33
#472764
Citação:

:
Perde dados?
Em que momento?
Programa fechado?
Rodando?

Tipo hoje tem amanhã não tem mais?

Ou

Tipo ta fazendo alguma coisa e some?


Boa noite, exemplo eles cadastraram 20 produtos, depois de 2 dias perceberam que desses 20 so tinha 15 cadastrados,
LEANTRONIC 25/03/2017 22:47:46
#472768
Cria uma tela de histórico, já aconteceu comigo e no final o usuário que estava deletando
TIAGO007 26/03/2017 04:00:05
#472770
Citação:

:
Cria uma tela de histórico, já aconteceu comigo e no final o usuário que estava deletando


Obrigado pela dica LEANTRONIC, mas na tabela de produto não tem rotina de delete,
XLEGENDARY 26/03/2017 13:50:38
#472774
tem algum campo data na tabela ?

nunca vi esse tipo de coisa, a nao ser que a tabela esteja corrompida
MARCOSLING 26/03/2017 14:14:55
#472775
Se a numeração não está pulando, isso significa q os dados não estão sendo gravados.

Faça um log e monitore.
Mas não grave o log no banco de dados, faça em txt ou qualquer outro tipo de persistência.
NILSONTRES 26/03/2017 14:30:14
#472776
Você utiliza transações, se não, comece.
Se utiliza, de uma revisada na rotina, pode estar faltando o commit em algum momento, nesse caso o registro até aparece, mas depois de reiniciar o sistema ele some.
TIAGO007 26/03/2017 16:29:21
#472780
Citação:

:
tem algum campo data na tabela ?

nunca vi esse tipo de coisa, a nao ser que a tabela esteja corrompida


Boa tarde NILSONTRES, Tem campo data_cadastro
TIAGO007 26/03/2017 16:34:55
#472781
Citação:

:
tem algum campo data na tabela ?

nunca vi esse tipo de coisa, a nao ser que a tabela esteja corrompida


Citação:

:
Se a numeração não está pulando, isso significa q os dados não estão sendo gravados.

Faça um log e monitore.
Mas não grave o log no banco de dados, faça em txt ou qualquer outro tipo de persistência.


Boa tarde MARCOSLING, o engraçado é que a numeração id, não pula mesmo, peguei um backup, do dia anterior e o ultimo id tava em 1919, mas o banco atual ta com id 1900, sumiu 19 registros, mas não esta pulando id
TIAGO007 26/03/2017 16:41:43
#472782
Citação:

:
Você utiliza transações, se não, comece.
Se utiliza, de uma revisada na rotina, pode estar faltando o commit em algum momento, nesse caso o registro até aparece, mas depois de reiniciar o sistema ele some.


Boa tarde Nilson, não uso o commit, mas meu banco esta com autocommit ativado, veja minha rotina de inclusão,
public int incluir(Produto produto)
{
int id = 0;
try
{
String sql = [Ô]insert into tb_produtos (data_cadastro,valor_compra,valor_venda,qtd_estoque,qtd_estoque_minimo,qtd_estoque_maximo,codigo_barra,local_armazenamento,descricao,fabricante,foto,aplicacao,obs,codigo_fabricante,codigo_montadora,similares,id_grupo,id_segmento,cfop,ncmsh,unidade, tamanho, cor, material ) VALUES (@data_cadastro,@valor_compra,@valor_venda,@qtd_estoque,@qtd_estoque_minimo,@qtd_estoque_maximo,@codigo_barra,@local_armazenamento,@descricao,@fabricante,@foto,@aplicacao,@obs,@codigo_fabricante,@codigo_montadora,@similares,@id_grupo,@id_segmento,@cfop,@ncmsh,@unidade,@tamanho, @cor, @material)[Ô];
con = new MySqlConnection(Conexao.StringDeConexao);
MySqlCommand cmd = new MySqlCommand(sql, con);
cmd.Parameters.AddWithValue([Ô]@data_cadastro[Ô], produto.DataCadastro);
cmd.Parameters.AddWithValue([Ô]@valor_compra[Ô], produto.ValorCompra);
cmd.Parameters.AddWithValue([Ô]@valor_venda[Ô], produto.ValoVenda);
cmd.Parameters.AddWithValue([Ô]@qtd_estoque[Ô], produto.QtdEstoque);
cmd.Parameters.AddWithValue([Ô]@qtd_estoque_minimo[Ô], produto.QtdEstoqueMinimo);
cmd.Parameters.AddWithValue([Ô]@qtd_estoque_maximo[Ô], produto.QtdEstoqueMaximo);
cmd.Parameters.AddWithValue([Ô]@codigo_barra[Ô], produto.CodigoBarra);
cmd.Parameters.AddWithValue([Ô]@local_armazenamento[Ô], produto.LocalArmazenamento);
cmd.Parameters.AddWithValue([Ô]@descricao[Ô], produto.descricao);
cmd.Parameters.AddWithValue([Ô]@fabricante[Ô], produto.Fabricante);
cmd.Parameters.AddWithValue([Ô]@foto[Ô], produto.Foto);
cmd.Parameters.AddWithValue([Ô]@aplicacao[Ô], produto.Aplicacao);
cmd.Parameters.AddWithValue([Ô]@obs[Ô], produto.Obs);
cmd.Parameters.AddWithValue([Ô]@codigo_fabricante[Ô], produto.CodFabricante);
cmd.Parameters.AddWithValue([Ô]@codigo_montadora[Ô], produto.CodMontadora);
cmd.Parameters.AddWithValue([Ô]@similares[Ô], produto.Similar);
cmd.Parameters.AddWithValue([Ô]@id_grupo[Ô], produto.IdGrupo);
cmd.Parameters.AddWithValue([Ô]@id_segmento[Ô], produto.IdSegmento);
cmd.Parameters.AddWithValue([Ô]@cfop[Ô], produto.Cfop);
cmd.Parameters.AddWithValue([Ô]@ncmsh[Ô], produto.Ncmsh);
cmd.Parameters.AddWithValue([Ô]@unidade[Ô], produto.Unidade);
cmd.Parameters.AddWithValue([Ô]@tamanho[Ô], produto.Tamanho);
cmd.Parameters.AddWithValue([Ô]@cor[Ô], produto.Cor);
cmd.Parameters.AddWithValue([Ô]@material[Ô], produto.Material);


con.Open();
cmd.ExecuteNonQuery();
cmd.CommandText = [Ô]select last_insert_id()[Ô];

id = Convert.ToInt32(cmd.ExecuteScalar());


// cmd.GetHashCode();

}
catch (Exception ex)
{
throw ex;

}
finally
{
con.Close();

}
return id;
}
Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas