For goodness sake! There are so many things wrong here, I'll just go for the big ones:
1) Do not concatenate strings to build a SQL command. It leaves you wide open to accidental or deliberate SQL Injection attack which can destroy your entire database. Use Parametrized queries instead
2) Do not use such similar names for your text fields. You said it yourself: "The Date&Time Function is Date_Time and the value of that is stored in STX5 string" - You have to tell us, because the names do not help anyone. If you used
STXDateTime
or similar, we would not need to be told - and in two weeks time, you wouldn't have to look through your code to work it out either, because you will have forgotten. Purely for maintenance, and readability, and reliability, change to sensible names!
The first one will probably help to solve your problem: the string form of the Date and time is almost certianbly in your local format, rather than ISO which the database is expecting. If you feed it
13/01/2009 14:59
and it expects
yyyy-MM-dd hh:mm:ss
then it will cause a data mismatch. Keep your dates and times in DateTime objects instead of strings, and pass them (and everything else) through as parameters - your code will be more readable, and your problem will go away.
cmdInsert.CommandText = "INSERT INTO SMSDATA1DB (Start_Of_Packet, Packet_Identifier,Soft_Version,...) VALUES (@SOP, @PI, @SV,...)"
cmdInsert.Parameters.AddWithValue("@SOP", STX1)
cmdInsert.Parameters.AddWithValue("@PI", STX2)
cmdInsert.Parameters.AddWithValue("@SV, STX3)
...