`
xutao7787
  • 浏览: 55360 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

可重复执行的 update sql 语句

阅读更多

做升级的时候需要对数据库进行升级且要求可重复执行,如果我们升级是新加一个数据库字段,执行第二次肯定会报错,可利用下面方法实现可重复执行升级sql。

 

delimiter //
DROP PROCEDURE IF EXISTS `updatePrivateMsgBox`;
CREATE PROCEDURE `updatePrivateMsgBox`()
NOT DETERMINISTIC
BEGIN
  DECLARE CONTINUE HANDLER FOR SQLEXCEPTION begin end;
 alter table T_PRIVATEMSGBOX add ( SENDCOUNT int default NULL);
END;
CALL updatePrivateMsgBox;

 

关于delimiter的解释:

  MySQL中delimit命令。  这个命令与存储过程没什么关系。  其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。  即改变输入结束符。  默认情况下,delimiter是分号“;”。  在命令行客户端中,如果有一行命令以分号结束,  那么回车后,mysql将会执行该命令。  但有时候,不希望MySQL这么做。因为可能输入较多的语句,且语句中包含有分号。  默认情况下,不可能等到用户把这些语句全部输入完之后,再执行整段语句。  因为mysql一遇到分号,它就要自动执行。  这种情况下,就可以使用delimiter,把delimiter后面换成其它符号,如//或$$。  此时,delimiter作用就是对整个小段语句做一个简单的封装。  此命令多用在定义子程序,触发程序等musql自己内嵌小程序中。
分享到:
评论

相关推荐

    hibernate执行原生sql语句

    "hibernate执行原生sql语句" Hibernate 是一种流行的 ORM(Object-Relational Mapping)框架,用于将 Java 对象映射到关系数据库中。然而,在一些情况下,我们需要直接执行原生 SQL 语句,而不是使用 Hibernate 的...

    EAS的DEP客户端脚本中执行select和update的sql语句的方法

    EAS二次开发中DEP在编辑或者列表界面写脚本时可调用的执行sql语句的方法。【本方法仅用于客户端代码中,如果是服务端代码,即对某实体进行DEP拓展,请参照官方出品DEP脚本指南】

    insert,update导出sql语句

    总结来说,INSERT和UPDATE SQL语句是数据库操作的核心,用于添加和修改数据。导出这些语句的目的是为了数据备份、恢复或在不同环境间迁移数据。使用合适的工具或脚本,可以轻松地批量生成这些语句,提高工作效率。而...

    mybatis直接执行sql语句后续之一

    这篇博客“mybatis直接执行sql语句后续之一”可能探讨了如何在MyBatis中高效且有效地执行SQL操作。下面我们将深入探讨MyBatis的SQL执行机制及相关知识点。 首先,MyBatis的核心组件是SqlSessionFactory,它是创建...

    java定时执行sql语句

    使用jfinal编写的本地应用,压缩文件里包括了eclipse本程序的源代码和可执行的jar文件。 通过配置数据库连接信息和要执行的sql语句,可实现定时执行多个sql语句。 所要执行的语句只能是写死的,可支持sqlserver ...

    access 一次执行多条sql语句

    ### Access一次执行多条SQL语句 在Access数据库管理中,有时我们需要在同一事务中执行多条SQL语句来确保数据的一致性和完整性。例如,在更新某个记录后可能还需要执行其他操作,如增加日志记录等。本文将详细介绍...

    完成超长SQL语句执行前拆分

    ### 完成超长SQL语句执行前拆分 #### 概述 在使用Visual Basic (简称VB)进行数据库操作时,可能会遇到因为SQL语句过长而导致无法正常执行的问题。这种情况下,即使该SQL语句可以在SQL Server的查询分析器中成功运行...

    oracle利用批处理文件执行SQL语句,bat连接oracle数据库并执行语句

    批处理文件(如.bat文件)在Windows环境中是一种高效的方式,可以自动化执行一系列命令,包括连接数据库和执行SQL语句。在这个场景中,我们可以利用批处理文件来简化Oracle数据库的操作,如删除用户、创建用户、创建...

    sql语句万能生成器,sql语句,sql语句生成

    5. **代码重用**:生成的SQL语句可以保存为模板,方便后续重复使用。 6. **提高效率**:通过自动化,开发人员可以将更多精力集中在业务逻辑上,而不是基础的SQL语法上。 尽管SQL生成器在许多情况下非常有用,但也要...

    oracle执行update语句时卡住问题分析及解决办法

    开发的时候debug到一条update的sql语句时程序就不动了,然后我就在plsql上试了一下,发现plsql一直在显示正在执行,等了好久也不出结果。但是奇怪的是执行其他的select语句却是可以执行的。 原因和解决方法 这种...

    生成UPDATE语句

    4. **执行动态SQL语句**:最后,通过打开一个游标并遍历结果集来执行生成的SQL语句。每处理完一定数量的记录后执行一次`COMMIT`操作以提高效率。 ### 主键在UPDATE语句中的作用 主键字段在`UPDATE`语句中扮演着至...

    sql语句生成工具,insert,update

    这可能是SQL语句生成工具的可执行文件,运行这个程序可以在本地计算机上生成SQL代码。此类应用程序通常包含交互式界面,用户可以通过它连接到数据库,选择表,然后生成所需的INSERT和UPDATE语句。 5. "DataBase....

    kettel循环执行动态sql

    “动态sql”表示SQL语句的灵活性,“循环”则表明Kettle中存在一个或多个循环结构,如For Each、While等,这些循环会根据设定的条件重复执行某段逻辑,例如动态生成并执行多个SQL语句。 在压缩包中的文件名: 1. `...

    Oracle批处理:使用C# 自带Oracle驱动一次执行多条Sql语句

    Oracle批处理是数据库操作中提高效率的重要手段,尤其是在C#编程环境下,利用Oracle的数据驱动进行批处理,可以显著提升大量SQL语句执行的速度。本文将深入探讨如何在C#中利用Oracle自带的驱动来实现批处理,以一次...

    ABAP SQL 语句 动态 操作

    因此,在实际应用中,应限制可执行的SQL类型,或者使用预编译的语句( Prepared Statements)来提高安全性。 9. **动态执行ABAP源代码**: 程序可能还涉及动态执行ABAP源代码,例如,创建包含SQL语句的临时程序(`...

    连接sqlserver数据库,批量执行sql语句

    在本案例中,我们关注的是使用VC++和MFC(Microsoft Foundation Classes)库连接到SQL Server数据库并批量执行SQL语句的过程。下面将详细介绍这个过程涉及的关键知识点。 首先,`VC++`是微软开发的一款集成开发环境...

    Oracle中SQL语句执行效率的查找与解决

    本文将深入探讨Oracle中SQL语句执行效率的查找与解决方法,特别关注于如何识别和优化那些导致性能瓶颈的查询。 ### Oracle SQL执行效率:查找与解决 #### 一、资源消耗分析 在Oracle中,SQL语句执行效率低下通常...

    Delphi adoquery处理多条SQL语句

    在 Delphi 开发环境中,ADOQuery 是一种常用的数据库查询组件,它支持多种数据库操作,包括执行 SQL 语句、查询数据等。本文将详细解释如何使用 Delphi 的 ADOQuery 组件来处理多条 SQL 语句。 #### 一、基本概念 ...

    使用Sqlcommand执行SQL语句

    本文将详细讲解如何使用`SqlCommand`执行SQL语句,包括基本用法、参数化查询、事务处理以及错误处理。 一、SqlCommand的基本使用 `SqlCommand`对象是`SqlConnection`的实例成员,它负责执行SQL命令。首先,我们需要...

    update语句

    PL/SQL是Oracle数据库的一种扩展,它允许开发者编写包含`UPDATE`在内的SQL语句的程序块,还包括流程控制语句、变量和异常处理。 在实际工作中,`UPDATE`语句广泛应用于数据维护、数据清洗和业务逻辑处理。了解如何...

Global site tag (gtag.js) - Google Analytics