您的位置:首页 > 其它

发现几个ACCESS查询时的问题

2014-01-09 09:18 239 查看
今天再用ACCESS查询的时候发现几个不知道算不算BUG的问题,就是在将PictureBox的图片转换为二进制数据之后存储的过程中居然跟参数添加的位置有关系,位置会影响到参数加入的正确性,比较郁闷。

贴上一小段代码加以说明

[c language="#"]
cmd.Parameters.Add("@start", OleDbType.DBDate).Value = start.Date;
cmd.Parameters.Add("@endof", OleDbType.DBDate).Value = end.Date;
cmd.Parameters.Add("@charge", OleDbType.Integer).Value = charge;
cmd.Parameters.Add("@guarantee", OleDbType.Double).Value = guarantee;
cmd.Parameters.Add("@water", OleDbType.Integer).Value = water;
cmd.Parameters.Add("@electricity", OleDbType.Integer).Value = electricity;
cmd.Parameters.Add("@modifyTime", OleDbType.DBDate).Value = modifyTime.Date;
cmd.Parameters.Add("@recordId", OleDbType.Integer).Value = recordId;

if (roomPic != null)
{
cmd.Parameters.Add("@Pic", OleDbType.Binary, roomPic.Length).Value = roomPic;
}
[/c]

注意看最后的一个if判断,我之所以加到最后就是因为如果放到中间的话会导致“标准表达式中数据类型不匹配”的错误,非常郁闷,这个害我检查了半天的程序错误,我觉得可以算上一个BUG了,放的位置不一定非要在最后,这个很难说,只能慢慢测试。

几个SQL命令检查、测试了下来又耽搁了我大半天时间,明天是原定的交货日期了,只好跟客户说延迟1天了,哎!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: