SQL Server - Error de sintaxis

   
Vista:

Error de sintaxis

Publicado por roberto (51 intervenciones) el 12/09/2008 00:28:08
hola como estan, tengo un error de sintaxis de este tipo

No se permite la conversión implícita del tipo de datos datetime a int. Utilice la función CONVERT para ejecutar esta consulta.

y me lo marca aqui, yo le puse CONVERT (int, @IdSesión) lo pongo a lado del select pero al hacerlo me pone otro error de sintaxis

Error de inserción: el nombre de columna o los valores especificados no corresponden a la definición de la tabla. Espero y me puedan decir cual es mi falla. Gracias.

y la tabla que utilizo es esta

CREATE TABLE Porcobrarpagosfijos (
[Tipo de Movimiento] [varchar](50) NOT NULL,
[Folio] [int] NULL,
[Serie] [char](1) NULL,
[Consecutivo] [int] NULL,
[IdSucursal] [int] NOT NULL,
[Tipo de Prestamo] [smallint] NULL,
[Texto Tipo de Prestamo] [nvarchar](50) NULL,
[Folio Solicitud] [int] NULL,
[Folio Renovado] [int] NULL,
[Folio Auditoria] [int] NULL,
[Folio Auditoria Detalle] [int] NULL,
[Folio Auditoria Separación] [int] NULL,
[Préstamo] [float] NULL,
[Nombre] [nvarchar](50) NULL,
[Categoría] [nvarchar](50) NULL,
[Cantidad] [int] NULL,
[Descripción] [nvarchar](255) NULL,
[Marca] [nvarchar](50) NULL,
[Modelo] [nvarchar](50) NULL,
[Serie No] [nvarchar](50) NULL,
[Metal] [int] NULL,
[Gramos] [float] NULL,
[Cotización] [float] NULL,
[Avalúo] [float] NULL,
[Precio de Venta] [float] NULL,
[Precio de Venta Real] [float] NULL,
[Separado] [bit] NULL DEFAULT ((0)),
[Fecha Separación] [datetime] NULL,
[Fecha Máxima para retirar] [datetime] NULL,
[Monto Abonado] [float] NULL,
[Saldo] [float] NULL,
[Monto Ultimo Abono] [float] NULL,
[Fecha Ultimo Abono] [datetime] NULL,
[Vendido] [bit] NULL DEFAULT ((0)),
[Fecha Venta] [datetime] NULL,
[Fecha] [datetime] NULL,
[Capital] [float] NULL,
[Aportación Social] [float] NULL,
[Intereses] [float] NULL,
[Bonificación Intereses] [float] NULL,
[Porciento Bonificación Iva] [real] NULL,
[Bonificación Iva] [float] NULL,
[Recargos Calculados] [float] NULL,
[Recargos] [float] NULL,
[Gastos Administrativos] [float] NULL,
[Pago recibido] [float] NULL,
[Folio Original] [int] NULL,
[Refrendo No] [tinyint] NULL,
[Fecha Promesa] [datetime] NULL,
[Ultimo Asesor Gestión] [nvarchar](50) NULL,
[Cuenta Visitas] [int] NULL,
[Cuenta Llamadas] [int] NULL,
[Usuario] [nvarchar](50) NULL,
[Asesor] [nvarchar](50) NULL,
[Cajero] [nvarchar](50) NULL,
[Crédito a Largo Plazo] [bit] NULL,
[Plazo Crédito a Largo Plazo] [real] NULL,
[Tipo Crédito a Largo Plazo] [int] NULL,
[Base para el cálculo de intereses Crédito a Largo Plazo] [int] NULL,
[Tasa de interés Crédito a Largo Plazo] [real] NULL,
[No Crédito a Largo Plazo] [int] NULL,
[Monto Primer Pago Crédito a Largo Plazo] [float] NULL,
[Fecha de Terminación Crédito a Largo Plazo] [datetime] NULL,
[Ubicación] [nvarchar](50) NULL,
[Ubicación2] [nvarchar](50) NULL,
[Ubicación3] [nvarchar](50) NULL,
[Ubicación4] [nvarchar](50) NULL,
[Gastos de Almacenaje] [float] NULL,
[Seguro] [float] NULL,
[IdSesión] [int] NULL,
[Factura] [bit] NULL DEFAULT ((0)),
[Id] [int] NOT NULL,
)

INSERT INTO Porcobrarpagosfijos SELECT * FROM [Listado de Movimientos] WHERE IdSesión = @IdSesión


CREATE PROCEDURE GenerarPorcobrarpagosfijos
AS
DECLARE @Fecha_Pago datetime,
@return_value int,
@IdSesión int

SELECT @Fecha_Pago = GETDATE()

EXEC @return_value = [dbo].[Generar Listado de Movimientos]
@De_Folio = NULL,
@A_Folio = NULL,
@De_Socio = NULL,
@A_Socio = NULL,
@De_Fecha = @Fecha_Pago,
@A_Fecha = @Fecha_Pago,
@Fecha_Pago = @Fecha_Pago,
@Monto_Pago = NULL,
@De_Fecha_Vencimiento = NULL,
@A_Fecha_Vencimiento = @Fecha_Pago,
@De_Fecha_Vencimiento_Pagos_Fijos = Null,
@A_Fecha_Vencimiento_Pagos_Fijos = @Fecha_Pago,
@Serie = NULL,
@IdSucursal = 1,
@Nombre_ = NULL,
@Identificación = NULL,
@Distinto_de_Categoría = 0,
@Categoría = NULL,
@Incluir_movimientos_por_cobrar = 1,
@Incluir_todas_las_amortizaciones = 0,
@Incluir_Correcciones = 0,
@Usuario = NULL,
@Asesor = NULL,
@cajero = NULL,
@Ubicación = NULL,
@Ubicación2 = NULL,
@Ubicación3 = NULL,
@Ubicación4 = NULL,
@Gastos_de_Almacenaje = NULL,
@Seguro = NULL,
@Modo_de_operación = N'Normal',
@Tipo_de_Movimiento = N'Por cobrar pagos fijos',
@IdSesión = @IdSesión OUTPUT

DELETE Porcobrarpagosfijos

INSERT INTO Porcobrarpagosfijos SELECT * FROM [Listado de Movimientos] WHERE IdSesión = @IdSesión

DELETE FROM [Prestamos Personales Paso] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales paso 1 pagos recibidos] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales Paso 2] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales Paso 2 Movimientos] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales paso 2 pagos recibidos por fecha y folio] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales Paso Movimientos] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales Paso Pagos a prestamos ya refrendados] WHERE IdSesión = @IdSesión
DELETE FROM [Prestamos Personales Paso Pagos a prestamos ya refrendados paso 1] WHERE IdSesión = @IdSesión
DELETE FROM [Listado de Movimientos] WHERE IdSesión = @IdSesión
DELETE FROM [Listado de Movimientos Prestamos ya refrendados Paso 2] WHERE IdSesión = @IdSesión
DELETE FROM [Listado de Movimientos Prestamos ya refrendados Paso 3] WHERE IdSesión = @IdSesión
DELETE FROM [Listado de Movimientos por fecha y folio] WHERE IdSesión = @IdSesión
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error de sintaxis

Publicado por Isaias (3308 intervenciones) el 12/09/2008 21:11:48
Tu error, es del tipo de NO CORRESPONDENCIA del numero de columnas o del tipo de datos que deseas insertar (modificar), debes validar que todos tus datos correspondan.

Ejemplo:

CREATE TABLE Empleado (ID INT, NOMBRE VARCHAR(50))

INSERT INTO Empleado VALUES('RODOLFO GONZALEZ')

Esto te daria el mismo error, ya que no haces referencia al campo ID en el insert
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar