Usuário com melhor resposta
Mensagem de Erro

Pergunta
-
Caros Amigos,Estou com um problema porem nao consegui identificar se é decorrente da aplicação ou do SQL Server.Tenho duas transações(tabelas) que em alguns registros, entro em modo de alteração, altero os dados, mas quano se CONFIRMA uma mensagem de erro é apresentada e nao registra a alteração.Tageda - Mensagem de erro " agenda foi modificada"Tcadclie - Mensagm de erro " cadclie foi modificada"porem via Enterprese Manager acesso a tabela e edito o registro.Alguma sugestão?SQL 2000Eliesioquarta-feira, 14 de maio de 2008 19:51
Respostas
-
Eliesio,
Você poderia utilizar algumas funções como por exemplo:
IsNULL --> para verificar se o valor é nulo.
IsDate --> para verificar se o valor que esta sendo testado é uma data.
IsNumeric --> para verificar se o valor que esta sendo testado é um número.
terça-feira, 20 de maio de 2008 11:18Moderador
Todas as Respostas
-
Você tentou realizar essa transação completa pelo Query Analyzer??
Seria interessante fazer esse tipo de teste com os dados que você está tentando inserir para ter certeza de que o problema não é relacionado ao conteúdo da transação.
quinta-feira, 15 de maio de 2008 10:24 -
Boa tarde,
efetuei os testes via Query e insere sem problemas.
Veja relato completo que postei:
Amigos,
tenho uma tabela chamada AGENDA, onde cd_agenda é key (autonumber). cd_agenda estava em 20747 e por algum motivo pulou para 840942 Para resolver isso, todos os registros a partir de 840942 exportei para o excel, após, exclui estes registros da tabela e utilizei o comando DBCC CHECKIDENT ('table_name', RESEED, new_reseed_value) para resetar a numeração novamente para 20747, arrumei no excel a numeração e importei novamente para a tabela.
PROBLEMA: Apos a importação, todos os registros que estavam na tabela excel (cerca de 200) não podem mais ser alterados, o Aplicativo volta com a mensagem "Agenda foi alterada"
Como faço para liberar todos os registros novamente para alteração?
Obrigado
Eliesio Gomes
No Enterprese Manager, ha o seguinte registro:Locks / Object = Med Process Details - PC0001\ASPNET - 54 - LOCAL
Last TSQL command batch , IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION.segunda-feira, 19 de maio de 2008 17:42 -
Eliesio,
Mas foi mantido o mesmo tipo de dados.
segunda-feira, 19 de maio de 2008 18:08Moderador -
Junior, boa noite,
vc tem razão, hoje apos muitas verificações, percebi que ao converter do excel para o sql o formato foi enviado de outra forma, exemplo:
atributo (obs) era character Null,tive que alterar porque o sql nao aceitava importar do excel com a coluna vazia.
atributo (dtlanagend) era datetime (09/05/0/ 15:00:00), importou do excel somente data
devido a isto gerei estes locks
teria algum comando para verificar os dados dos atributos dentro da tabela e informar quais não são validos?
Obs. todos meus conhecimentos em sql sao atraves de leitura e da ajuda de vcs
Obrigado,
terça-feira, 20 de maio de 2008 00:16 -
Eliesio,
Você poderia utilizar algumas funções como por exemplo:
IsNULL --> para verificar se o valor é nulo.
IsDate --> para verificar se o valor que esta sendo testado é uma data.
IsNumeric --> para verificar se o valor que esta sendo testado é um número.
terça-feira, 20 de maio de 2008 11:18Moderador