Resulta que cuando hago una actualización con parámetros a una base de datos
Access, si el campo que se va a actualizar es de tipo numérico decimal o
doble (en access), al valor que le envío a access, si tiene coma (separador
decimal) no lo vee:
Si le envío el valor 3,14 en access se guarda 314
Por descontado que el valor que le envío es del tipo correcto.
Alguien sabe como solucionar esto.
Los valores que hay en el objeto Command son:
miComando {System.Data.OleDb.OleDbCommand}
CommandText "UPDATE Clientes SET IdDatoPersonal=?,
Contacto=? , Saldo=?, TotalVenta=?,
Descuento=?, Habilitado=? WHERE Id=?"
CommandTimeOut 30
CommandType Text
Connection {System.Data.Oledb.OleDbConnection}
Container Nothing
DesignTimeVisible True
Parameters {System.Data.Oledb.OleDbParameterCollection}
Count 7
Item(0)
DbType Int32
Direction Input
IsNullable False
OledbType Integer
ParameterName "IdDatoPersonal"
Precision 0
Scale 0
Size 0
SourceColumn "IdDatoPersonal"
SourceVersion Current
Value 1{Integer}
Item(1)
DbType AnsiString
Direction Input
IsNullable False
OledbType VarChar
ParameterName "Contacto"
Precision 0
Scale 0
Size 0
SourceColumn "Contacto"
SourceVersion Current
Value "Carlos"{String}
Item(2) >Aquí empiezan los problemas
DbType Decimal
Direction Input
IsNullable False
OledbType Decimal
ParameterName "Saldo"
Precision 0
Scale 0
Size 0
SourceColumn "Saldo"
SourceVersion Current
Value 12D{Decimal} El valor es el que introduje
Item(3)
DbType Decimal
Direction Input
IsNullable False
OledbType Decimal
ParameterName "TotalVenta"
Precision 0
Scale 0
Size 0
SourceColumn "TotalVenta"
SourceVersion Current
Value 12.12{Decimal} El valor es el que introduje
Item(4)
DbType Decimal
Direction Input
IsNullable False
OledbType Decimal
ParameterName "Descuento"
Precision 0
Scale 0
Size 0
SourceColumn "Descuento"
SourceVersion Current
Value 12000.12D{Decimal} El valor es el que introduje
Item(5)
DbType Boolean
Direction Input
IsNullable False
OledbType Boolean
ParameterName "Habilitado"
Precision 0
Scale 0
Size 0
SourceColumn "Habilitado"
SourceVersion Current
Value True{Boolean}
Item(6)
DbType Int32
Direction Input
IsNullable False
OledbType Integer
ParameterName "Id"
Precision 0
Scale 0
Size 0
SourceColumn "Id"
SourceVersion Current
Value 1{Integer}
Site Nothing
Transaction {System.Data.OleDb.OleDbTransaction}
UpdatedRowSource Both
Los valores que se aparecen en access son:
Id: 1
IdDatoPersonal: 1
Contacto: Carlos
Saldo 12
TotalVenta 1212 ->En vez de 12,12
Descuento 1200012 ->En vez de 12000,12
Habilitado True (casilla marcada)
Tanto en saldo,totalVenta y Descuento tengo en diseño:
Tipo Número
Tamaño del campo Decimal
Precision 18
Escala 2
Lugares Decimales 2
Leer las respuestas