Gol*_*old 3 c# sql oracle plsql ora-01843
我有一个字符串格式的anb B.
A = 14/01/2007
B = 22:10:39
我尝试插入日期和时间:
SQL = "insert into MyTbl(Tdate,Ttime) value ('" + Convert.ToDateTime(A) + "','" + Convert.ToDateTime(B) + "')";
Run Code Online (Sandbox Code Playgroud)
我有ORA-01843错误,我能做什么?
提前致谢
不要使用原始SQL来插入值.请改用参数化查询.以正常方式将字符串解析为.NET DateTime(或DateTimeOffset)和TimeSpan值,然后使用如下内容:
string sql = "insert into MyTbl(Tdate,Ttime) values (:date, :time)";
using (OracleCommand cmd = new OracleCommand(sql, connection))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add("date", OracleType.DateTime).Value = date;
cmd.Parameters.Add("time", OracleType.IntervalDayToSecond).Value = time;
cmd.ExecuteNonQuery();
}
Run Code Online (Sandbox Code Playgroud)
(显然会根据实际字段的类型进行调整.)
| 归档时间: |
|
| 查看次数: |
7788 次 |
| 最近记录: |