16/01/2009, 09:21
|
| | | Fecha de Ingreso: noviembre-2005
Mensajes: 403
Antigüedad: 19 años Puntos: 0 | |
Respuesta: Recuperar ID de un Insert Hola a todos
Lo primero gracias a todos por contestas.
Lo estoy haciendo con Select @@identity
pero tengo un error me dice esto y no se por que es?
Error: Línea 1: sintaxis incorrecta cerca de '@idusuario'.
VB.NET
Código:
SqlInsert = "Exec InsertarCarrito (@idusuario, @fecha, @Hora, @estado, @precio, @fechafactura, @descuento, @portes, @total, @formadepago, @formadeEnvio, @numeroAbono, @fechaAbono, @descuentoAbono, @portesAbono, @totalAbono, @TipoDireccion)"
cmd.CommandText = SqlInsert
cmd.Connection = con_ins
cmd.Parameters.Add("@idusuario", SqlDbType.Int)
cmd.Parameters.Add("@fecha", SqlDbType.SmallDateTime)
cmd.Parameters.Add("@Hora", SqlDbType.NVarChar, 50)
cmd.Parameters.Add("@estado", SqlDbType.NVarChar, 255)
cmd.Parameters.Add("@precio", SqlDbType.Float)
cmd.Parameters.Add("@fechafactura", SqlDbType.DateTime)
cmd.Parameters.Add("@descuento", SqlDbType.Int)
cmd.Parameters.Add("@portes", SqlDbType.Float)
cmd.Parameters.Add("@total", SqlDbType.Float)
cmd.Parameters.Add("@formadepago", SqlDbType.NVarChar, 255)
cmd.Parameters.Add("@formadeEnvio", SqlDbType.NVarChar, 50)
cmd.Parameters.Add("@numeroAbono", SqlDbType.NVarChar, 255)
cmd.Parameters.Add("@fechaAbono", SqlDbType.DateTime)
cmd.Parameters.Add("@descuentoAbono", SqlDbType.Int)
cmd.Parameters.Add("@portesAbono", SqlDbType.Float)
cmd.Parameters.Add("@totalAbono", SqlDbType.Float)
cmd.Parameters.Add("@TipoDireccion", SqlDbType.Int)
cmd.Parameters("@idusuario").Value = idusuario
cmd.Parameters("@fecha").Value = Fecha
cmd.Parameters("@Hora").Value = Hora
cmd.Parameters("@estado").Value = Estado
cmd.Parameters("@precio").Value = Precio
cmd.Parameters("@fechafactura").Value = DBNull.Value
cmd.Parameters("@descuento").Value = Descuento
cmd.Parameters("@portes").Value = Portes
cmd.Parameters("@total").Value = Total
cmd.Parameters("@formadepago").Value = Formadepago
cmd.Parameters("@formadeEnvio").Value = FormadeEnvio
cmd.Parameters("@numeroAbono").Value = DBNull.Value
cmd.Parameters("@fechaAbono").Value = DBNull.Value
cmd.Parameters("@descuentoAbono").Value = DBNull.Value
cmd.Parameters("@portesAbono").Value = DBNull.Value
cmd.Parameters("@totalAbono").Value = DBNull.Value
If RTipoDireccion = "Si" Then
' Nueva Direccion
cmd.Parameters("@TipoDireccion").Value = 1
Else
' La dirección del usuario.
cmd.Parameters("@TipoDireccion").Value = 0
End If
Dim Registro As String
Registro = cmd.ExecuteScalar() ERROR AKI SQL SERVER PROCEDIMENTO
Código:
ALTER PROCEDURE [InsertarCarrito]
@idusuario int,
@fecha datetime = NULL,
@Hora nvarchar(255)=NULL,
@estado nvarchar(255)=NULL,
@precio nvarchar(255)=NULL,
@fechafactura datetime = NULL,
@descuento nvarchar(255)=NULL,
@portes nvarchar(255)=NULL,
@total nvarchar(255)=NULL,
@formadepago nvarchar(255)=NULL,
@formadeEnvio nvarchar(255)=NULL,
@numeroAbono nvarchar(255)=NULL,
@fechaAbono datetime = NULL,
@descuentoAbono nvarchar(255)=NULL,
@portesAbono nvarchar(255)=NULL,
@totalAbono nvarchar(255)=NULL,
@TipoDireccion nvarchar(255)=NULL
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO pedido (idusuario, fecha, Hora, estado, precio, fechafactura, descuento, portes, total, formadepago, formadeEnvio, numeroAbono, fechaAbono, descuentoAbono, portesAbono, totalAbono, TipoDireccion)
VALUES( @idusuario, @fecha, @Hora, @estado, @precio, @fechafactura, @descuento, @portes, @total, @formadepago, @formadeEnvio, @numeroAbono, @fechaAbono, @descuentoAbono, @portesAbono, @totalAbono, @TipoDireccion)
Select @@identity as IdPedido
END
|