Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-02-2009
Tauro78 Tauro78 is offline
Miembro
 
Registrado: sep 2006
Posts: 88
Poder: 18
Tauro78 Va por buen camino
Error en SP "Invalid colunm name"

hola a todos, he estado tratando de correr el siguiente SP en SQL SERVER pero me da error:

Invalid colunm name 'NOMBRE'
Invalid colunm name 'FECHA_VTO_DGI'
Invalid colunm name 'FECHA_VTO_BPS'
Invalid colunm name 'FECHA_VTO_PL_TRABAJO'

Código:
 
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[SP_BUSCAR_EMPRESA] 
-- Add the parameters for the stored procedure here
@SP_NOMBRE NVARCHAR(50) OUTPUT,
@RESULTADO INT OUTPUT,
@SP_FECHA_VTO_DGI DATETIME OUTPUT,
@SP_FECHA_VTO_BPS DATETIME OUTPUT,
@SP_FECHA_VTO_PL_TRABAJO DATETIME OUTPUT

AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF EXISTS (SELECT NOMBRE, FECHA_VTO_DGI, FECHA_VTO_BPS, FECHA_VTO_PL_TRABAJO FROM EMPRESAS WHERE NOMBRE = @SP_NOMBRE) 
BEGIN
SET @RESULTADO = 1
SET @SP_NOMBRE = NOMBRE
SET @SP_FECHA_VTO_DGI = FECHA_VTO_DGI
SET @SP_FECHA_VTO_BPS = FECHA_VTO_BPS
SET @SP_FECHA_VTO_PL_TRABAJO = FECHA_VTO_PL_TRABAJO
END
ELSE
SET @RESULTADO = 0
-- Insert statements for procedure here 
END
desde ya muchas gracias.
Responder Con Cita
  #2  
Antiguo 19-02-2009
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
En lugar de establecer el valor con "Set", asignales el valor en el mismo "select"

Código SQL [-]
Select @sp_nombre= Nombre....
From empresas
Where Nombre = @SP_Nombre
__________________

Responder Con Cita
  #3  
Antiguo 19-02-2009
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
yo tengo esto y me funciona muy bien:
Código SQL [-]
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS OFF 
GO

-- Exec BuscaCliente 'Juanito'
CREATE PROCEDURE  BuscaCliente
@Cliente varchar(20)
AS
Declare @Result bit

If Exists(Select Cliente From Clientes Where Cliente = @Cliente)
Begin
 select @Result = 1
end else begin
 Select @Result = 0
end

Select @Result as Resultado

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO
__________________

Responder Con Cita
  #4  
Antiguo 19-02-2009
Tauro78 Tauro78 is offline
Miembro
 
Registrado: sep 2006
Posts: 88
Poder: 18
Tauro78 Va por buen camino
hola, gracias por la ayuda, segui tu consejo e hice lo siguiente

Código:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:  <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[SP_BUSCAR_EMPRESA] 
-- Add the parameters for the stored procedure here
@SP_NOMBRE NVARCHAR(50) OUTPUT,
@RESULTADO INT OUTPUT,
@SP_FECHA_VTO_DGI DATETIME OUTPUT,
@SP_FECHA_VTO_BPS DATETIME OUTPUT,
@SP_FECHA_VTO_PL_TRABAJO DATETIME OUTPUT
 
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF EXISTS (SELECT @SP_NOMBRE= NOMBRE, @SP_FECHA_VTO_DGI= FECHA_VTO_DGI, @SP_FECHA_VTO_BPS= FECHA_VTO_BPS,
                  @SP_FECHA_VTO_PL_TRABAJO= FECHA_VTO_PL_TRABAJO FROM EMPRESAS WHERE NOMBRE = @SP_NOMBRE) 
  BEGIN
    SET @RESULTADO = 1   
  END
    ELSE
      SET @RESULTADO = 0
-- Insert statements for procedure here 
END
pero me da error:

Mens 170, Nivel 15, Estado 1, Procedimiento SP_BUSCAR_EMPRESA, Línea 19
Line 19: Incorrect syntax near '='.


Responder Con Cita
  #5  
Antiguo 19-02-2009
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Código SQL [-]
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS OFF 
GO

-- Exec BuscaCliente 'Juanito'
CREATE PROCEDURE  BuscaCliente
@Cliente varchar(20)
AS
Declare @Result bit
Declare @Nombre varchar(20)

Select @Result = 1, @Nombre = Cliente
From Clientes
Where Cliente = @Cliente

Select IsNull(@result,0) as Resultado, @Nombre as Nombre

SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO
__________________

Responder Con Cita
  #6  
Antiguo 21-02-2009
Tauro78 Tauro78 is offline
Miembro
 
Registrado: sep 2006
Posts: 88
Poder: 18
Tauro78 Va por buen camino
Hola, de esta forma me funciono, gracias.

Código Delphi [-]
 
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
 
GO
 
-- =============================================
-- Author: 
-- Create date: 
-- Description: 
-- =============================================
 
ALTERPROCEDURE [dbo].[SP_BUSCAR_EMPRESA] 
 
-- Add the parameters for the stored procedure here
 
@SP_NOMBRE NVARCHAR(50) OUTPUT,
 
@RESULTADO INT OUTPUT,
 
@SP_FECHA_VTO_DGI DATETIME OUTPUT,
 
@SP_FECHA_VTO_BPS DATETIME OUTPUT,
 
@SP_FECHA_VTO_PL_TRABAJO DATETIME OUTPUT

 
AS
BEGIN
 
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
 
SET NOCOUNT ON;
 
IFEXISTS(SELECT NOMBRE, FECHA_VTO_DGI, FECHA_VTO_BPS, FECHA_VTO_PL_TRABAJO FROM EMPRESAS WHERE NOMBRE = @SP_NOMBRE)BEGIN
SET @RESULTADO = 1
SET @SP_NOMBRE =(SELECT NOMBRE FROM EMPRESAS WHERE NOMBRE = @SP_NOMBRE)
SET @SP_FECHA_VTO_DGI =(SELECT FECHA_VTO_DGI FROM EMPRESAS WHERE FECHA_VTO_DGI = @SP_FECHA_VTO_DGI)
SET @SP_FECHA_VTO_BPS =(SELECT FECHA_VTO_BPS FROM EMPRESAS WHERE FECHA_VTO_BPS = @SP_FECHA_VTO_BPS)
SET @SP_FECHA_VTO_PL_TRABAJO =(SELECT FECHA_VTO_PL_TRABAJO FROM EMPRESAS WHERE FECHA_VTO_PL_TRABAJO = @SP_FECHA_VTO_PL_TRABAJO)
END
ELSE
SET @RESULTADO = 0
 
-- Insert statements for procedure here 
 
END
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Error "Invalid Parameter" usando Tquery cuando proceso una consulta grande CharlesWar SQL 5 18-06-2008 20:27:56
Error "Invalid field Type" entre Delphi 2007 y Firebird 1.5 saltamirano Varios 2 24-12-2007 23:38:07
Error "Invalid pointer operation" en función contenida en DLL Albano OOP 2 20-06-2007 23:01:31
Acceso a Outlook 2003 Reminders y error "Invalid Variant Operation" saldanaluis Providers 2 24-05-2007 21:17:58
Error "Invalid User/Password" al intentar conectar con dbexpress vivim82 Conexión con bases de datos 1 30-04-2004 03:22:49


La franja horaria es GMT +2. Ahora son las 18:04:11.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi