做升级的时候需要对数据库进行升级且要求可重复执行,如果我们升级是新加一个数据库字段,执行第二次肯定会报错,可利用下面方法实现可重复执行升级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 是一种流行的 ORM(Object-Relational Mapping)框架,用于将 Java 对象映射到关系数据库中。然而,在一些情况下,我们需要直接执行原生 SQL 语句,而不是使用 Hibernate 的...
EAS二次开发中DEP在编辑或者列表界面写脚本时可调用的执行sql语句的方法。【本方法仅用于客户端代码中,如果是服务端代码,即对某实体进行DEP拓展,请参照官方出品DEP脚本指南】
总结来说,INSERT和UPDATE SQL语句是数据库操作的核心,用于添加和修改数据。导出这些语句的目的是为了数据备份、恢复或在不同环境间迁移数据。使用合适的工具或脚本,可以轻松地批量生成这些语句,提高工作效率。而...
这篇博客“mybatis直接执行sql语句后续之一”可能探讨了如何在MyBatis中高效且有效地执行SQL操作。下面我们将深入探讨MyBatis的SQL执行机制及相关知识点。 首先,MyBatis的核心组件是SqlSessionFactory,它是创建...
使用jfinal编写的本地应用,压缩文件里包括了eclipse本程序的源代码和可执行的jar文件。 通过配置数据库连接信息和要执行的sql语句,可实现定时执行多个sql语句。 所要执行的语句只能是写死的,可支持sqlserver ...
### Access一次执行多条SQL语句 在Access数据库管理中,有时我们需要在同一事务中执行多条SQL语句来确保数据的一致性和完整性。例如,在更新某个记录后可能还需要执行其他操作,如增加日志记录等。本文将详细介绍...
### 完成超长SQL语句执行前拆分 #### 概述 在使用Visual Basic (简称VB)进行数据库操作时,可能会遇到因为SQL语句过长而导致无法正常执行的问题。这种情况下,即使该SQL语句可以在SQL Server的查询分析器中成功运行...
批处理文件(如.bat文件)在Windows环境中是一种高效的方式,可以自动化执行一系列命令,包括连接数据库和执行SQL语句。在这个场景中,我们可以利用批处理文件来简化Oracle数据库的操作,如删除用户、创建用户、创建...
5. **代码重用**:生成的SQL语句可以保存为模板,方便后续重复使用。 6. **提高效率**:通过自动化,开发人员可以将更多精力集中在业务逻辑上,而不是基础的SQL语法上。 尽管SQL生成器在许多情况下非常有用,但也要...
开发的时候debug到一条update的sql语句时程序就不动了,然后我就在plsql上试了一下,发现plsql一直在显示正在执行,等了好久也不出结果。但是奇怪的是执行其他的select语句却是可以执行的。 原因和解决方法 这种...
4. **执行动态SQL语句**:最后,通过打开一个游标并遍历结果集来执行生成的SQL语句。每处理完一定数量的记录后执行一次`COMMIT`操作以提高效率。 ### 主键在UPDATE语句中的作用 主键字段在`UPDATE`语句中扮演着至...
这可能是SQL语句生成工具的可执行文件,运行这个程序可以在本地计算机上生成SQL代码。此类应用程序通常包含交互式界面,用户可以通过它连接到数据库,选择表,然后生成所需的INSERT和UPDATE语句。 5. "DataBase....
Oracle批处理是数据库操作中提高效率的重要手段,尤其是在C#编程环境下,利用Oracle的数据驱动进行批处理,可以显著提升大量SQL语句执行的速度。本文将深入探讨如何在C#中利用Oracle自带的驱动来实现批处理,以一次...
因此,在实际应用中,应限制可执行的SQL类型,或者使用预编译的语句( Prepared Statements)来提高安全性。 9. **动态执行ABAP源代码**: 程序可能还涉及动态执行ABAP源代码,例如,创建包含SQL语句的临时程序(`...
在本案例中,我们关注的是使用VC++和MFC(Microsoft Foundation Classes)库连接到SQL Server数据库并批量执行SQL语句的过程。下面将详细介绍这个过程涉及的关键知识点。 首先,`VC++`是微软开发的一款集成开发环境...
本文将深入探讨Oracle中SQL语句执行效率的查找与解决方法,特别关注于如何识别和优化那些导致性能瓶颈的查询。 ### Oracle SQL执行效率:查找与解决 #### 一、资源消耗分析 在Oracle中,SQL语句执行效率低下通常...
本文将详细讲解如何使用`SqlCommand`执行SQL语句,包括基本用法、参数化查询、事务处理以及错误处理。 一、SqlCommand的基本使用 `SqlCommand`对象是`SqlConnection`的实例成员,它负责执行SQL命令。首先,我们需要...
PL/SQL是Oracle数据库的一种扩展,它允许开发者编写包含`UPDATE`在内的SQL语句的程序块,还包括流程控制语句、变量和异常处理。 在实际工作中,`UPDATE`语句广泛应用于数据维护、数据清洗和业务逻辑处理。了解如何...
在 Delphi 开发环境中,ADOQuery 是一种常用的数据库查询组件,它支持多种数据库操作,包括执行 SQL 语句、查询数据等。本文将详细解释如何使用 Delphi 的 ADOQuery 组件来处理多条 SQL 语句。 #### 一、基本概念 ...
【标题】"Web页面执行SQL语句.rar" 涉及的关键知识点主要集中在Web开发、数据库管理和.NET框架的使用上。这个压缩包文件提供了一种通过Web界面与数据库交互的方法,使得用户可以在网页上直接执行SQL语句进行数据操作...