Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/02/2013, 09:42
maialenlopez
 
Fecha de Ingreso: abril-2012
Mensajes: 449
Antigüedad: 12 años, 1 mes
Puntos: 7
Exclamación como introducir valores en insert

Hola estoy intentando hacer un insert pasandole los valores de esta forma que veréis en el codigo de abajo pero tengo un problema:
Código vb.net:
Ver original
  1. Protected Sub guardarTablaZSAPFacturableSI(ByVal numhoja As String, ByVal mes As String, ByVal año As String)
  2.         Dim mytrans As OracleTransaction
  3.         Dim fechacreacion As Date
  4.         Dim conn As New OracleConnection()
  5.         conn.ConnectionString = ConfigurationManager.ConnectionStrings("conexionOracleDesa").ConnectionString.ToString
  6.         Dim sql As String
  7.  
  8.         sql = "insert into sapsr3.zgastos_gen (mandt,zig,prctr,kostl,aufnr,pspid,erdat,zperiod,zejercic,tratado,xblnr) "
  9.         sql = sql + "values('111','@numhoja','@codigolinea','@ceco','@orden','@proyecto','@fechacreacion','@mes','@año','0','@nombreApellidos')"
  10.  
  11.         Dim comm As New OracleCommand(sql, conn)
  12.  
  13.         Try
  14.             With comm
  15.                 .CommandType = CommandType.Text
  16.                 'pasarle siempre
  17.                 .Parameters.Add("@mandt", 111)
  18.                 .Parameters.Add("@numhoja", numhoja)
  19.                 .Parameters.Add("@codigolinea", codigolinea)
  20.                 .Parameters.Add("@ceco", ceco)
  21.                 .Parameters.Add("@orden", orden)
  22.                 If proyecto = "" Then
  23.                 Else
  24.                     .Parameters.Add("@proyecto", proyecto)
  25.                 End If
  26.                 .Parameters.Add("@fechacreacion", fechacreacion)
  27.                 '.Parameters.Add("@tratado", 0)
  28.                 .Parameters.Add("@nombreApellidos", nombre)
  29.  
  30.                 If importeTotal = "0.00" Then
  31.                     .Parameters.Add("@importeTotal", DBNull.Value)
  32.                 Else
  33.                     .Parameters.Add("@importeTotal", importeTotal)
  34.                 End If
  35.                 .Parameters.Add("@mes", mes)
  36.                 .Parameters.Add("@año", año)
  37.             End With
  38.  
  39.             Using conn
  40.                 conn.Open()
  41.  
  42.                 mytrans = conn.BeginTransaction()
  43.                 Try
  44.                     With comm
  45.                         .Transaction = mytrans
  46.                         .ExecuteNonQuery()
  47.                         .Dispose()
  48.                     End With
  49.                     mytrans.Commit()
  50.                 Catch ex As OracleException
  51.                     mytrans.Rollback()
  52.                     MsgBox("Error en BD" & Chr(13) & Chr(13) & ex.Message)
  53.                     'mensaje("Error en BD" & Chr(13) & Chr(13) & ex.Message)
  54.                 End Try
  55.             End Using
  56.         Catch ex As Exception
  57.  
  58.             MsgBox("Error en BD" & Chr(13) & Chr(13) & ex.Message)
  59.             'mensaje("Error en BD" & Chr(13) & Chr(13) & ex.Message)
  60.         Finally
  61.             conn.Close()
  62.             conn.Dispose()
  63.         End Try
  64.     End Sub

El problema es que se me guarda el la base de datos @mes, @año,.... en vez de guardarse el valor.

¿Que es lo que estoy haciendo mal?
__________________
Gracias por todo;

Un saludo