读书人

利用参数化SQL语句向Oracle数据库插

发布时间: 2013-07-09 09:50:48 作者: rapoo

利用参数化SQL语句,向Oracle数据库插入DateTime类型数据时该如何设置???
现在要向Oracle数据库中的某个表插入一条数据,该数据表中有一个字段为DateTime类型。。。


if (!string.IsNullOrEmpty(birthday))
{
prams = new OracleParameter[] {
new OracleParameter(":userName", userName),
new OracleParameter(":pwd", pwd),
new OracleParameter(":sex", sex),
new OracleParameter(":mobile", mobileNo),
new OracleParameter(":cretType", GetLicType(cretType)),
new OracleParameter(":cretNo", cretNo),
new OracleParameter(":fixedPhone", fixedPhone),
new OracleParameter(":mail", email),
new OracleParameter(":postCode", postCode),
new OracleParameter(":address", contactAdd),


new OracleParameter(":dvrLicNo", drivLicense),
new OracleParameter(":dvrLicDate", getDrivLiceDay),
new OracleParameter(":recomName", referee),
new OracleParameter(":knowDesc", couponCode),
new OracleParameter(":reg_mode", "网站注册"),
new OracleParameter(":birthday", birthday)
};
}

int re = Convert.ToInt32(SQLHelper.ExecuteNonQuery(conStr, CommandType.Text, sbSql.ToString(), prams));



在执行
int re = Convert.ToInt32(SQLHelper.ExecuteNonQuery(conStr, CommandType.Text, sbSql.ToString(), prams));
时报错了,错误信息为
"ORA-01858: 在要求输入数字处找到非数字字符"

注:birthday为String类型,调试获取到的值string birthday = "to_date('2011-07-03','yyyy-mm-dd')";

在线等,先谢谢了!
[解决办法]
to_date('2004-05-07','yyyy-mm-dd hh24:mi:ss') try
------解决方案--------------------


利用参数化SQL语句,向Oracle数据库插入DateTime类型数据时该怎么设置?
[解决办法]


string str = "2011-07-07";
DateTime dt = Convert.ToDateTime(str);

[解决办法]
引用:
引用:

to_date('2004-05-07','yyyy-mm-dd hh24:mi:ss') try


不行,错误提示和上面一样,谢谢!


我其实还是弄了下Oracle得,但是忘了,真是悲哀,兄弟,先仔细调试下,看看问题到底是在什么地方。
也行不是这里勒?对啊,哈哈。
[解决办法]
嗯, 嗯 new OracleParameter(":birthday", birthday)
这句的时候birthday还是string 类型的
你得在这传值之前先转换成datetime类型。

读书人网 >asp.net

热点推荐