zoukankan      html  css  js  c++  java
  • 关于Access数据库执行Update语句后,不报错,但影响行数总是返回0的问题...... up

    本来一直都在用MSSQL的,可是公司接了个不大也不算小的网站,网站大部分是我的前任做的,(呵呵,我是公司新来的!)数据库也是用的ACCESS。

    本人真的很不喜欢ACCESS,用的过程中老是会报些莫名其妙的错误。烦不胜烦。

    今天下午使用Update语句更新数据时,发现返回的影响行数总是0,没报错。琢磨好久,也一直在网上找解决办法。

    弄了一下午,才发现。原来只是传参数时的顺序问题。。。。。。汗哪。。。。。。

    详细:看下面的代码,sql语句的参数是@KindName在前面,之后是@PicUrl,最后是@Id,

    如果在parameters中把@KindName放最后,或第二,就会发现影响行数返回0。

    真纳闷。。。。。。

    MSSQL多好啊。。。。。

    /// <summary>
        /// 更新一条数据
        /// </summary>
        public int Update()
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("update tb_Brand set ");
            strSql.Append("KindName=@KindName,");
            strSql.Append("PicUrl=@PicUrl,");
            strSql.Append(" where Id=@Ids ");
            OleDbParameter[] parameters = {
         new OleDbParameter("@KindName", OleDbType.VarWChar),
         new OleDbParameter("@PicUrl", OleDbType.VarWChar),
                        new OleDbParameter("@Id", OleDbType.Integer)};
            parameters[0].Value = KindName;
            parameters[1].Value = PicUrl;
            parameters[2].Value = Id;

            return DbHelperOleDb.ExecuteSql(strSql.ToString(), parameters);
        }

  • 相关阅读:
    ExcelHelper
    c# 文件的读写
    Wav文件操作类
    c# & (与) 、^ (异或)和 >>(<<位移运算)
    c# 高精度的timer
    c# 生成txt文件,写入内容
    C# 对 list<T>中的数据按某字段的大小进行排序
    OC 底层探索 06、 isa 2个经典问题分析
    OC 底层探索 05、属性、成员、实例变量简析
    数据结构与算法 0、 汇总简介
  • 原文地址:https://www.cnblogs.com/uphenson/p/1708547.html
Copyright © 2011-2022 走看看