首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何处理在DoCmd.RunSQL(INSERT INTO...)之后找到的0行

在使用DoCmd.RunSQL(INSERT INTO...)语句插入数据后,如果发现没有插入任何行,可以采取以下几种处理方式:

  1. 检查数据源:首先,确保数据源连接正常,并且具有正确的权限。检查数据库表结构和字段定义,确保插入语句与表结构匹配。
  2. 检查插入语句:仔细检查INSERT INTO语句的语法和参数是否正确。确保插入的数据与表字段类型和约束一致。
  3. 检查数据:确认要插入的数据是否符合表字段的要求。例如,如果某个字段定义为非空字段,确保插入的数据不为空。
  4. 检查错误信息:在执行插入语句之后,可以通过检查错误信息来了解具体的错误原因。可以使用VBA代码中的Err对象来获取错误信息,并进行相应的处理。
  5. 使用事务处理:可以将插入操作放在事务中进行处理。事务可以保证插入操作的原子性,即要么全部插入成功,要么全部回滚。这样可以更好地控制插入操作的结果。
  6. 错误处理:在插入操作之后,可以根据返回的结果进行相应的错误处理。可以使用VBA代码中的If语句来判断插入是否成功,并根据结果进行相应的处理逻辑。

总结起来,处理在DoCmd.RunSQL(INSERT INTO...)之后找到的0行的方法包括检查数据源、插入语句、数据、错误信息,使用事务处理和错误处理等。根据具体情况选择合适的处理方式,以确保插入操作的成功。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MySQL adddrop字段时报主键冲突

3 表insert 操作比较频繁。...从官方文档中描述所说 online ddl 期间,其他会话执行dml操作造成唯一键冲突sql会记录到 online log 中,commit阶段等变更结束之后再应用这些sql会导致报错唯一键冲突...举一反三 ,其实只要是会导致重复记录sql语句,比如update,insert,insert into... on duplicate key,replace into 都会导致添加字段、删除字段ddl...如何解决呢 ,推荐使用 pt-osc或者 gh-ost 在线ddl变更工具 官方讨论 官方定对于该问题是online ddl限制,有兴趣朋友可以阅读下面两个链接,了解官方和提交问题人员讨论记录...该参数限定了online ddl操作时使用临时日志文件最大大小。创建索引或者对表进行alter操作时,该日志文件存储了DDL操作期间对表 insert,update,delete数据记录。

4.7K21

PHP爬虫源码:百万级别知乎用户数据爬取与分析

使用正则表达式获取到图片链接之后,再发一次请求,这时候带上图片请求来源,说明该请求来自知乎网站转发。...处理方案如下: 1)插入数据库之前检查数据是否已经存在数据库; 2)添加唯一索引,插入时使用 INSERT INTO ......ON DUPLICATE KEY UPDATE... 3)添加唯一索引,插入时使用 INSERT INGNORE INTO... 4)添加唯一索引,插入时使用 REPLACE INTO......第一种方案是最简单但也是效率最差方案,因此不采取。二和四方案执行结果是一样,不同是,遇到相同数据时, INSERT INTO ......所以二和四两者间选择了第二种方案。而第三种方案, INSERT INGNORE 会忽略执行INSERT语句出现错误,不会忽略语法问题,但是忽略主键存在情况。

2.6K82
  • MySQLMariaDB触发器详解

    其中before触发器类似于SQL Server中instead of触发器,作用在检查约束之前。而after触发器和SQL Server中一样,检查约束之后才生效。...MySQL/MariaDB中,使用old和new表分别表示触发器激活后新旧表,SQL Server中使用是inserted和deleted表,其实它们意义是等价。...且无论是before还是after insert触发器都有new表存在。 mariadb 10.2.3版本之后,一个表中可以为同一时间、同一事件创建多个触发器(mysql中不允许)。...有两类insert触发器:before和after触发器,分别表示表中记录被删除之前和表中数据被删除之后激活触发器。 注意,delete触发器只表中记录被删除时候才会被激活。...insert into... on duplicate key update语句中,插入没有重复值冲突记录时,首先判断是否存在before insert触发器,有就触发,触发之后检查约束,发现没有重复值冲突

    1.8K20

    Oracle游标使用详解

    二、游标的分类: 1、显式游标:由用户定义,需要操作:定义游标、打开游标、提取数据、关闭游标,主要用于对查询语句处理。...  CLOSE emp_cursor; END; 这里严格按照显示游标的书写规则:DECLARE emp_cursor定义游标OPEN emp_cursor打开游标FETCH emp_cursor INTO...2、隐式游标:由系统定义并为它创建工作区域,并且隐式定义打开提取关闭,隐式游标的游标名就是'SQL',属性和显示游标相同,主要用于对单行select语句或dml操作进行处理。...3、参数游标: 定义游标时加入参数游标,可以配合游标for循环快速找到需要数据。这里先讲一下游标for循环 A、游标FOR循环: 隐含执行了打开提取关闭数据,代码精简很多。...同时在你使用update或delete时,必须使用where current of+name_cursor语句,以及最后记得提交。

    3.7K10

    【高阶数据结构】哈希表详解

    注意: 哈希函数设计越精妙,产生哈希冲突可能性就越低,但是无法避免哈希冲突。 所以接下来我们就来讲一下如何处理哈希冲突。 4....不能,因为他有可能发生了冲突在后面存着呢,所以如果第一次没找到的话就要线性探测继续往后找(找到这个过程和你如何存是对应着),那这里我们往后一个位置就找到了。 那找到了,如何删除呢?...回到上面删除场景——删除33 删除之后是这样 那然后我想查找13,大家看,现在能查找到吗?...找到了我们可以返回一下这个元素指针,如果走到空还没找到就是没有这个值,返回空(如果表为空也没必要查找直接返回) 写一下代码 那find写好之后的话,其实insert里面我们可以再加一个,如果到时候封装...聚集问题: 开放定址法处理冲突时,有时会出现聚集问题。聚集是指数据项哈希表中被连续地存储相邻位置上,这样会导致冲突更加频繁,并且会造成某些位置利用率低而其他位置利用率高情况。

    90120

    DBus数据库表结构变更处理方案

    DBus专注于数据实时采集和实时分发,是一种基于日志解决方案,同时能够提供消息订阅方式给下游系统使用。本篇文章主要介绍DBus设计中,它是如何处理表结构变更及其带来各种问题。...数据库表结构变更在软件产品快速迭代过程中是普遍存在现象,抽取数据库中数据是DBus最重要功能之一,那么对于数据库中表结构变更及其带来各种问题,DBus是如何处理呢?...alter事件之后,第一个insert记录才被OGG捕获并发送给DBus,此时DBus会认为这条数据中包含alter变化后数据。...于是我们开始尝试DDL trigger中调用存储过程,存储过程中执行Event表insert操作,但由于存储过程和DDL trigger仍然属于同一个事务,因此Event表数据依然不能被OGG捕获...1所示: [1530511157273053341.png] 二、处理表结构变更事件 DBus已经具备通过事件方式感知表结构变更能力,接下来详细说明一下表结构变更事件该如何处理

    1.7K40

    MyBatis踩坑之SQLProvider转义字符被删除问题

    通过SQLProvider拼装SQL方式日志中看到发送给MySQL语句为: ? 而通过@Insert注解方式定义SQL日志中看到发送给MySQL语句为: ?...上述这段话大概意思就是说,MySQL默认情况下(SQL模式不是“NO_BACKSLASH_ESCAPES”)会将插入字段中字符“”删除掉。 解决方案 既然找到问题根源,那就不难解决了。...另一个解决办法就是通过JDBC客户端解决,只要确保客户端使用PreparedStatement预处理语句即可解决该问题。...原因是PreparedStatement预处理语句中会对转义字符做处理,如下我们通过追踪“mariadb-java-client”源码来确认一下。 ?...显然,PreparedStatement预处理语句中会对转义字符做特别处理,具体来讲:当查询字段中包含',",\,NUL时,会在这些字符前面再加一个转义字符\,所以最终发送给MySQL服务器SQL

    1.6K20

    TiFlash 源码阅读(六)DeltaTree Index 设计和实现分析

    Entry 之前需要处理 Stable 数据行数,在内部节点中代表右子树中最小 sid;is_insert叶子节点中存在,代表这个 Entry 对应是插入操作还是删除操作,其中删除操作代表是删除...Entry 合并之后有序数据流中位置。...添加 Insert Entry 之前需要先获得对应数据行 row_id,也即这条数据 Stable 层和 Delta 层合并后有序数据流中位置,具体这个 row_id 如何获取我们放在后面再讲...Entry,根据当前 Entry sid 和已经处理 Stable 层数据行数计算出接下来需要读取 Stable 数据行数,读取完之后再从 Delta 层读取当前 Entry 对应数据行。...其实这个问题答案也非常简单,就是将当前 Delta 层和 Stable 层进行合并之后,然后在其中找到需要插入或者删除数据行 row_id 即可。

    34440

    源码剖析 Mybatis 映射器(Mapper)工作原理

    从Mybatis 3.0之后,我们可以通过一个Mapper映射接口来完成相同功能。你是否思考过,Mapper映射接口内部是如何完成这样功能。...匹配上某个sql之后,底层实际上还是利用SqlSession相关方法来进行操作,只不过这个过程对于用户来说屏蔽了。...接下来内容中,笔者将从源码角度来分析Mybatis内部是如何使用JDK动态代理机制来完成这些功能,我们带着几个问题开始源码分析之旅: SQL与Mapper接口绑定关系是如何建立?...动态代理类是按照什么逻辑生成? 动态代理类是如何对方法进行拦截并处理? 2 SQL与Mapper接口绑定关系是如何建立? 这个过程mybatis初始化阶段,解析xml配置文件时候就确定了。...中,之后根据Class,就可以找到对应工厂类 knownMappers.put(type, new MapperProxyFactory(type)); //4、解析Mapper

    6K20

    超详细单链表学习(二)

    -------------完了------------- 二、单链表删除 1、如何找到要删除节点? 通过遍历来查找节点。...从头指针+头节点开始,顺着链表依次将各个节点拿出来,按照一定方法比对,找到我们要删除那个节点。 2、如何来删除一个节点?...,这样就把要删除节点给摘出来了 free(p); } // 处理完成之后退出程序 return 0; } } // 到这里还没找到.../ 找到了节点,处理这个节点 // 分为2种情况,一个是找到是普通节点,另一个是找到是尾节点 // 删除节点困难点在于:通过链表遍历依次访问各个节点,找到这个节点...,这样就把要删除节点给摘出来了 free(p); } // 处理完成之后退出程序 return 0; } } // 到这里还没找到

    21920

    【化解数据结构】详解树结构,并实现二叉搜索树

    this.root = newNode : insertNode(this.root, newNode) } 在这里我们写好了 insert 方法,简单逻辑判断,根节点有无,接下来处理交给 insertNode...(324) tree.insert(34) 看到调试器面板中记录,符合我们预期 我们再来看看插入是如何一步一步实现吧~ const tree = new BinarySearchTree() tree.insert...) { this.root = removeNode(this.root, data) } 来实现 removeNode 方法 首先我们先处理一些边界判断工作 在这里我们先处理了空树情况,当树为空时返回...然后用这个最小值,去替代当前这个被删除节点 之后我们需要删除右子树中那个节点 最后返回更新后节点引用 在这里我们使用了一个自己封装方法 findMinNode ,可以自己去试试如何实现,它功能是...我们做题时候,不必封装一个完整树,只需要我们知道有这个数据结构,我们需要使用时候,我们提取它灵魂即可,学了这么多数据结构,也能发现,它们都是通过数组或者对象封装而成,因此它们本质还是我们最熟悉东西

    28020

    玩转Mysql系列 - 第27篇:mysql如何确保数据不丢失?有几点值得我们借鉴

    记录所在数据页p1,将其从磁盘中加载到内存中 在内存中找到r1p1中位置,然后对p1进行修改(这个过程可以描述为:将p1中pos_start1到pos_start2位置值改为v1),这个过程我们记为...在内存中找到r2p2中位置,然后对p2进行修改(这个过程可以描述为:将p2中pos_start1到pos_start2位置值改为v2),这个过程我们记为rb2(内部包含事务编号trx_id),...如果上面的update之后,mysql宕机,然后重启了,p1在内存中是不存在,此时系统会读取redo log文件中内容进行恢复处理。...trx_id=10记录是prepare状态,会去binlog中查找trx_id=10操作binlog中是否存在,如果不存在,说明binlog写入失败了,此时可以将此操作回滚 步骤13执行完毕之后,...上面t_acct_log中所有status=0记录被处理完毕之后,t_acct表中balance和old_balance会变为一致。

    56120

    Kafka 怎么顺序消费?面试必备!

    不同Topic任何情况下都无法保证consumer消费顺序和producer发送顺序一致。 如果不同Topic之间存在数据关联且对消费顺序有要求,该如何处理?本文主要解决此问题。...两个Topic消费为不同线程处理,所以为了保证同一时间内同一数据标识消息仅有一个业务逻辑处理,需要对业务添加锁操作。...使用synchronized进行加锁的话,会影响无关联insert和update数据消费能力,如id=1insert和id=2update,synchronized情况下,无法并发处理,这是没有必要...,我们需要是对于id=1insert和id=1update同一时间只有一个处理,所以使用细粒度锁来完成加锁操作。...在对insert和update加锁之后,其实还是没有解决消费顺序问题,只是确保了同一时间只有一个业务处理。 对于消费顺序异常问题,也就是先消费了update再消费insert情况。

    3K50
    领券