使用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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java传递二维数组_java二维数组

    java传递二维数组_java二维数组数组–是用来存储一组相同数据类型的数据的容器;数组本身是一个引用数据类型[]数组内部存储的元素?可以是基本数据类型;int[]也可以是引用数据类型;String[]引用数据类型;StringMathScanner想要创建一个数组–里面存储好多个小数组int[],如何做?二维数组1.数组的定义/声明;int[][]x;2.数组的初始化;静态初始化;–有长度有元素int[][]x={{3,…

    2022年4月29日
    41
  • 如何为pycharm配置Python解释器_pycharm选择python解释器

    如何为pycharm配置Python解释器_pycharm选择python解释器@本文来源于公众号:csdn2299,喜欢可以关注公众号程序员学府文章目录1.python解释器安装2.配置环境变量3.pycharm安装4.pycharm设置及使用4.1pycharm设置4.2pycharm使用1.python解释器安装下载地址:https://www.python.org/打开官网,点击downloads,选择操作系统,以windows为例:选择python2与python3解释器版本(以python3.6.6及python2.7.16为例):以python3.6.6为例

    2022年8月29日
    3
  • 其实Unix很简单

    很多编程的朋友都在网上问我这样的几个问题,Unix怎么学?Unix怎么这么难?如何才能学好?并且让我给他们一些学好Unix的经验。在绝大多数时候,我发现问这些问题的朋友都有两个特点:1)对Unix有

    2021年12月27日
    36
  • ListNode示例

    ListNode*partition(ListNode*head,intx){ListNoderes(0),mid(0);if(!head)returnNULL;ListNode*small=&res;ListNode*big=∣while(head){if(head->val<

    2022年4月8日
    40
  • RPA中, COE是什么意思? 它的职责是什么?[通俗易懂]

    COE,是指RPA卓越中心,即CenterofExcellence,简称COE,是企业早期部署RPA时创建的部门,用于支持RPA的实现和正在进行的部署。一个企业要想顺利实施RPA,为企业后续RPA的部署打下良好基础,其关键推动因素之一,是要建立一个结构良好且人员配置完善的RPA卓越中心(COE)。为了实现这一目标,RPA厂商应该协助客户在机器人流程自动化过程中开发内部自我维持和可扩展的RPA专业知识,以运行和维护机器人。卓越中心(COE)本质上是将RPA深入有效地嵌入组织,并在未来部署中重新分配累积的知

    2022年4月18日
    208
  • UVA644

    UVA644题意:输入多个序列,判断是否存在前缀关系。思路如下:现

    2022年6月16日
    28

发表回复

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

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