проблем представянето на данните при VB i SQL
1 отговора
56 прегледа
проблем представянето на данните при VB i SQL
при VB десетичната точка е , (запетая)
a при SQL е . (точка) и когато пусна следното:
dbConcrete.Execute "insert into tblRequest (fldRequestID, fldType, " _
& "fldStandart, fldDate, fldClientID, fldVolume, fldProject, " _
& "fldProperty1, fldProperty2, fldProperty3, fldProperty4, fldProperty5" _
& ") values (" & Val(lblRequestID.Caption) & ", '" & _
cmbType.Text & "', '" & cmbStandart.Text & "', #" _
& Month(Date) & "/" & Day(Date) & "/" & Year(Date) & "#, '" & _
cmbClientID.Text & "', " & txtVolume.Text & ", '" & _
txtProject.Text & "', '" & cmbProperty1.Text & "', '" & _
cmbProperty2.Text & "', '" & cmbProperty3.Text & "', '" & _
cmbProperty4.Text & "', '" & cmbProperty5.Text & "');"
ако има число с десетична запетая SQL енджина на виндоуса я третира като част от синтаксиса казва че има грешка в синтаксиса на SQL командата.
типа на полето в таблицата е Single (плаваща запетая с единична точност т.е. -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values.)
aко използвам "Csng" пак не става
Въпросът има ли начин да задам VB да слага "." вместо "," или SQL да приема "," като "."
a при SQL е . (точка) и когато пусна следното:
dbConcrete.Execute "insert into tblRequest (fldRequestID, fldType, " _
& "fldStandart, fldDate, fldClientID, fldVolume, fldProject, " _
& "fldProperty1, fldProperty2, fldProperty3, fldProperty4, fldProperty5" _
& ") values (" & Val(lblRequestID.Caption) & ", '" & _
cmbType.Text & "', '" & cmbStandart.Text & "', #" _
& Month(Date) & "/" & Day(Date) & "/" & Year(Date) & "#, '" & _
cmbClientID.Text & "', " & txtVolume.Text & ", '" & _
txtProject.Text & "', '" & cmbProperty1.Text & "', '" & _
cmbProperty2.Text & "', '" & cmbProperty3.Text & "', '" & _
cmbProperty4.Text & "', '" & cmbProperty5.Text & "');"
ако има число с десетична запетая SQL енджина на виндоуса я третира като част от синтаксиса казва че има грешка в синтаксиса на SQL командата.
типа на полето в таблицата е Single (плаваща запетая с единична точност т.е. -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values.)
aко използвам "Csng" пак не става
Въпросът има ли начин да задам VB да слага "." вместо "," или SQL да приема "," като "."
Re: проблем представянето на данните при VB i SQL
Пробвай с параметър, по-четливо ще е и няма да се бърка.
Ето ти един пример на VB.NET, преобразувай си го за твоите нужди :
_ _ _
Time is like a drug. Too much of it kills you.
Ето ти един пример на VB.NET, преобразувай си го за твоите нужди :
Dim Conn = New System.Data.Odbc.OdbcConnection(strConnectionString)
Dim Cmd As System.Data.Odbc.OdbcCommand = Conn.CreateCommand
Cmd.CommandText = "insert into notes (id,customer_id,text,creator,note_date,subject,solved,important) " & _
" values (0,?,?,52,?,?,1,0)"
Cmd.Parameters.Add("", Odbc.OdbcType.Int).Value = aCustID
Cmd.Parameters.Add("", Odbc.OdbcType.Text).Value = aBody
Cmd.Parameters.Add("", Odbc.OdbcType.DateTime).Value = aDate
Cmd.Parameters.Add("", Odbc.OdbcType.Text).Value = aSubject
Try
Cmd.ExecuteNonQuery()
Catch ex As Exception
ErrorHandler ( Cmd.CommandText, ex.Message )
End Try
_ _ _
Time is like a drug. Too much of it kills you.