Usuário com melhor resposta
Erro em procedure

Pergunta
-
Prezados bom dia,
Tenho a seguinte procedure
/****** Object: StoredProcedure [dbo].[sp_Multas_Veiculos_inc] Script Date: 04/16/2018 16:40:11 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[sp_Multas_Veiculos_inc] ( @dt_multa varchar(10) ,@hr_multa varchar(10) ,@num_infracao varchar(10) ,@cod_infracao varchar(10) ,@descricao varchar(100) ,@dt_venc varchar(10) ,@dt_pagto varchar(10) ,@vlr_pagto varchar(10) ,@transferido int ,@ressarcido int ,@obs_multa varchar(200) ,@operador int ,@id_motorista int ,@id_veiculo int ,@id_multa int ,@tipo_notificacao varchar(10) ,@num_notificacao int ,@local_multa varchar(255) ) WITH RECOMPILE AS SET NOCOUNT ON -- Abre transação BEGIN TRANSACTION INSERT INTO Multas_Veiculos (Id_veiculo ,Id_motorista ,Dt_multa ,Hr_multa ,Num_Infracao ,Cod_Infracao ,Descricao_Infracao ,Dt_Venc ,Dt_Pagto ,Vlr_Pagto ,Transferido ,Ressarcido ,Obs_Multa ,Dt_Inclusao ,Tipo_Notificacao --Esta linha ,Num_Notificacao ,Local_Multa ,Operador ) VALUES (@id_veiculo ,@id_motorista ,@dt_multa ,ISNULL(@hr_multa,'') ,@num_infracao ,ISNULL(@cod_infracao,'') ,ISNULL(@descricao,'') ,ISNULL(@dt_venc,'') ,ISNULL(@dt_pagto,'') ,ISNULL(@vlr_pagto,'') ,ISNULL(@transferido,'') ,ISNULL(@ressarcido,'') ,ISNULL(@obs_multa,'') ,GETDATE() ,@tipo_notificacao ,@num_notificacao ,@local_multa ,@operador ) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RAISERROR ('Problemas na inserção da Multa!', 16, 1) GOTO FINAL_ERRO END SET @id_multa = @@IDENTITY GOTO FINAL_SP FINAL_ERRO: ROLLBACK TRANSACTION GOTO FINAL FINAL_SP: COMMIT TRANSACTION FINAL: SET NOCOUNT OFF
Sendo que está exibindo o erro:
Mensagem 102, Nível 15, Estado 1, Linha 1
Sintaxe incorreta próxima a ','.Quando dou 2 cliques na mensagem de erro, ele leva para a linha que está em negrito .
Alguem tem alguma ideia ?
Fabio Aragao
Respostas
-
Olá, geralmente quando a mensagem de erro te leva a linha que ele diz estar errado, ás vezes é o trecho anterior a linha selecionada que está o erro, no seu caso eu reparei em 2 coisas:
1. o erro pode estar na data inclusão, onde o formato da data não está como o esperado pelo banco, geralmente os formatos mais comuns são "yyyy-MM-dd" ou "dd/MM/yyyy".Veja se funciona, qualquer coisa mande o script do create table MULTAS-VEICULOS para fazermos uma simulação.
Abs!
Leandro de Agostini MCTS - Web Application, Framework 4
- Marcado como Resposta Fabio Aragao terça-feira, 17 de abril de 2018 14:37
Todas as Respostas
-
Olá, geralmente quando a mensagem de erro te leva a linha que ele diz estar errado, ás vezes é o trecho anterior a linha selecionada que está o erro, no seu caso eu reparei em 2 coisas:
1. o erro pode estar na data inclusão, onde o formato da data não está como o esperado pelo banco, geralmente os formatos mais comuns são "yyyy-MM-dd" ou "dd/MM/yyyy".Veja se funciona, qualquer coisa mande o script do create table MULTAS-VEICULOS para fazermos uma simulação.
Abs!
Leandro de Agostini MCTS - Web Application, Framework 4
- Marcado como Resposta Fabio Aragao terça-feira, 17 de abril de 2018 14:37
-
leandro obrigado por responder..
Já achamos o erro aqui, eu coloquei o campo com varchar(10) so que não percebi que o campo receberia quase 20 caracteres ao todo, foi erro meu.
Fabio Aragao
- Sugerido como Resposta Junior Galvão - MVPMVP quarta-feira, 18 de abril de 2018 12:04