当前位置:Gxlcms >
数据库问题 >
C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。
C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。
时间:2021-07-01 10:21:17
帮助过:61人阅读
+ dc
.ColumnName, dc
.DataType)
param
.IsNullable = dc
.AllowDBNull
if (dr_src
.Table.Columns.Contains(dc
.ColumnName))
{
if (!(dr_src[dc
.ColumnName] is System
.DBNull))
{
if (dc
.DataType.FullName.Equals(
"System.DateTime"))
{
param
.Value = dr_src[dc
.ColumnName]
.ToString()
}
else
{
param
.Value = dr_src[dc
.ColumnName]
}
}
else
{
param
.Value = dc
.DefaultValue
if (dc
.DataType.FullName.Equals(
"System.Decimal"))
{
param
.Value = System
.Decimal.Zero
}
if (dc
.DataType.FullName.Equals(
"System.String"))
{
param
.Value = String
.Empty
}
}
}
else
{
param
.Value = dc
.DefaultValue
}
导致该问题的罪魁祸首为 System.DateTime 类型的字段
if (dc.DataType.FullName.Equals("System.DateTime"))
{
param.Value = dr_src[dc.ColumnName].ToString()
}
在线该类型的Parameter赋值时,不能传递 System.DateTime 类型,而是需要传递 String 类型。
C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。
标签:system datetime oledb access string