使用OleDbDataAdapter更新Access

使用OleDbDataAdapter更新Accesstry{MdbDALdal=newMdbDAL();DataTabledt=(DataTable)gv.DataSource;IDbCommandcmd=dal.NewDbCommand(string.Format(“UPDATE{0}SET[Msg]=@Msg,[MsgChs]=@MsgChs,[MsgCht]=@MsgChtWH…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

try

{

    MdbDAL dal 

=
 
new
 MdbDAL();
    DataTable dt 

=
 (DataTable)gv.DataSource;
    IDbCommand cmd 

=
 dal.NewDbCommand(
string
.Format(

UPDATE {0} SET [Msg]=@Msg, [MsgChs]=@MsgChs, [MsgCht]=@MsgCht WHERE Id=@Id

, table));
    OleDbParameter p 

=
 
new
 OleDbParameter(

@Msg

, OleDbType.LongVarChar);
    p.SourceColumn 

=
 

Msg

;
    cmd.Parameters.Add(p);

    p 
=
 
new
 OleDbParameter(

@MsgChs

, OleDbType.LongVarChar);
    p.SourceColumn 

=
 

MsgChs

;
    cmd.Parameters.Add(p);

    p 
=
 
new
 OleDbParameter(

@MsgCht

, OleDbType.LongVarChar);
    p.SourceColumn 

=
 

MsgCht

;
    cmd.Parameters.Add(p);

    p 
=
 
new
 OleDbParameter(

@Id

, OleDbType.BigInt);
    p.SourceColumn 

=
 

Id

;
    cmd.Parameters.Add(p);
    
    dal.Update(dt, cmd);
    MessageBox.Show(


保存成功!



提示

, MessageBoxButtons.OK, MessageBoxIcon.Information);
}

catch
 (Exception ex)
{

    MessageBox.Show(ex.Message, 


错误

, MessageBoxButtons.OK, MessageBoxIcon.Error);
}

更新的过程中可能出现如下错误:

Data Type mismatch in criteria expression.

Concurrency violation: the UpdateCommand affected 0 of the expected 1 records

注意:数据类型要正确、SQL中的参数要和加入command中的参数的顺序一致。


访问类型名称  数据库数据类型  OLE DB 类型  .NET Framework 类型  成员名称 文本 VarWChar  DBTYPE _ WSTR System.String  OleDbType.VarWChar 备注 LongVarWCha r DBTYPE _ WSTR System.String  OleDbType.LongVarWChar 编号: 字节 UnsignedTinyInt  DBTYPE _ UI 1 System.Byte  OleDbType.UnsignedTinyInt 是 / 否 Boolean 类型的值  DBTYPE_BOOL System.Boolean  OleDbType.Boolean 日期 / 时间 日期时间  DBTYPE_DATE System.DateTime  OleDbType.Date 货币 小数  DBTYPE_NUMERIC System.Decimal  OleDbType.Numeric 编号: 十进制 小数  DBTYPE_NUMERIC System.Decimal  OleDbType.Numeric 编号: Double 类型的值 双击  DBTYPE_R8 System.Double  OleDbType.Double 自动编号 (复制 ID) GUID  DBTYPE_GUID System.Guid  OleDbType.Guid 号码: (复制 ID) GUID  DBTYPE_GUID System.Guid  OleDbType.Guid 自动编号 (长整型) 整数  DBTYPE_I4 System.Int 32  OleDbType.Integer 号码: (长整型) 整数  DBTYPE_I4 System.Int 32  OleDbType.Integer OLE 对象 LongVarBinary  DBTYPE_BYTES System.Byte 数组 OleDbType.LongVarBinary 编号: Single 类型的值 单个  DBTYPE_R4 System.Single  OleDbType.Single 编号: Integer 类型的值 smallint  DBTYPE_I2 System.Int 16  OleDbType.SmallInt 二进制 varbinary * DBTYPE_BYTES System.Byte 数组 OleDbType.Binary 超链接 VarWChar  DBTYPE _ WSTR System.String  OleDbType.VarWChar 

转载于:https://www.cnblogs.com/angushine/archive/2009/06/01/1494091.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226704.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql如何查询前10个数据_查询前十条数据

    mysql如何查询前10个数据_查询前十条数据要选择前10条记录,请在MySQL中使用LIMIT。让我们首先创建一个表-mysql>createtableDemoTable->(->PageNumbertext->);使用插入命令在表中插入一些记录-mysql>insertintoDemoTablevalues(‘Page-1’);mysql>insertintoDemoTabl…

    2025年10月3日
    1
  • Git安装与配置(mac版本)

    Git安装与配置(mac版本)教程目录 0x00 教程内容 0x01Git 的下载与安装 1 下载 2 安装 0x02Git 的配置 1 配置用户名和用户邮箱 0x03 校验 Git0xFF 总结 0x00 教程内容说明 我安装的 Git 版本是 2 16 2 教程参考 MAC 端 Git 安装以及环境搭建 0x01Git 的下载与安装 1 下载 a 方式一之官网下载 保险期间还是用这种方式好点咯 https www git

    2025年10月20日
    3
  • 浙江python信息技术教材_人工智能、Python…浙江省三到九年级将使用信息技术新修订教材…

    浙江python信息技术教材_人工智能、Python…浙江省三到九年级将使用信息技术新修订教材…浙江省教研室相关负责人表示,目前根据现行的高中教材,对小学、初中的老教材进行了修订,新教材将于今年9月投入使用,最新的线上教师培训也刚刚结束。扣哒世界作为全球最大的中小学人工智能和Python代码编程教学平台,已经从2019年开始系统支持浙江省中小学人工智能和Python代码编程师资培训。根据浙江省最新的教材目录,从小学三年级一直到九年级,内容都有不同程度的调整。三年级新增了“信息社会”和“网络生…

    2022年5月16日
    36
  • JQuery的安装与下载教程

    JQuery的安装与下载教程网页中添加jQuery可以通过多种方法在网页中添加jQuery。您可以使用以下方法:从jquery.com下载jQuery库 从CDN中载入jQuery,如从Google中加载jQuery下载jQuery有两个版本的jQuery可供下载:Productionversion-用于实际的网站中,已被精简和压缩。 Developmentversion-用于测试和开发(未压缩,是可读的代码)以上两个版本都可以从jquery.com中下载。…

    2022年5月3日
    44
  • C语言求最大公约数和最小公倍数(思路清晰+拓展)[通俗易懂]

    C语言求最大公约数和最小公倍数(思路清晰+拓展)[通俗易懂]最大公约数的求法首先了解它的一般求法(欧几里得算法):假设存在两个数A和B,假如A%B的结果不为0,那么A和B的最大公约数是B与A%B的最大公约数,一直往下计算,直到后者为0,此时的最大公约数为A’(注意不是A而是A’)。就比如上边的例子,当A%B==0的时候,最大公约数就是B了,这个A’就代表B。最大公约数的代码:(基于C++实现的函数)intgcd(inta,intb){ in…

    2022年5月16日
    52
  • 图形推理专项突破训练1000题及详解_行测图形推理题怎么搜答案

    图形推理专项突破训练1000题及详解_行测图形推理题怎么搜答案图形推理是很常见的推理题型,在做这类型题目的时候,同学们出现了”两极分化”的特征,有的同学很快找到规律,做出了题目,有的同学却一直看着第一题”百思不得其解”。出现这样的情况,其根本原因在于图形推理是技巧性很强的题目,如果知道技巧,可以很快知道出题人考查的重点,从而快速联想到可会考的规律。下面我们一起来看一下图形推理的规(tao)律(lu):第一层:相似性相异(图形差距很大)→数量关系相同(图形差距…

    2025年10月17日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号