java调用方法
private void createOrUpdateDBStore(String storeName,String tableSQLs,boolean newStore, String dbType) throws java.sql.SQLException
{
if(null == storeName || storeName.length()<=0)
{
throw new SQLException("数据库名为空");
}
if(null == tableSQLs || tableSQLs.length()<=0)
{
throw new SQLException("建表脚本为空");
}
SessionFactory.dispose();
Session session = SessionFactory.getSession();
try
{
java.sql.Connection conn = session.getConnection("WBO_Server_DB_System");
java.sql.Statement ps = conn.createStatement();
if(newStore)
{
String createStoreSQL = this.toCrateStoreSQL(storeName,dbType);
ToolLog.getLog().debug(createStoreSQL);
ps.execute(createStoreSQL);
}
StringBuffer sqlSB = new StringBuffer();
sqlSB.append("USE " + storeName + "\r\n");
ToolLog.getLog().debug(sqlSB.toString());
ps.execute(sqlSB.toString());
String[] lines = this.toSQLLines(tableSQLs);
sqlSB = new StringBuffer();
for(int i=0;i<lines.length;i++)
{
String s = lines[i];
if("GO".equalsIgnoreCase(s))
{
String sql = sqlSB.toString();
ToolLog.getLog().debug(sql);
ps.execute(sql);
sqlSB = new StringBuffer();
}
else
{
sqlSB.append(s);
sqlSB.append("\r\n");
}
}
}
finally
{
SessionFactory.close(session);
}
}
sql脚本
drop procedure if exists sp_update_table_field;
GO
create procedure sp_update_table_field()
begin
if not exists(select 1 from information_schema.columns where table_name='WB_Sys_Role' and column_name='Is_Export') then
ALTER TABLE WB_Sys_Role ADD Is_Export TINYINT NOT NULL default '0';
end if;
end
GO
call sp_update_table_field();
GO
drop procedure if exists sp_update_table_field;
GO
这样是可以执行的;
但是在mysql的客户端是不会执行的,客户端执行的sql语句是:
drop procedure if exists sp_update_table_field;
delimiter //
create procedure sp_update_table_field()
begin
if not exists(select 1 from information_schema.columns where table_name='WB_Sys_Role' and column_name='Is_Export') then
ALTER TABLE WB_Sys_Role ADD Is_Export TINYINT NOT NULL default '0';
end if;
end
//
delimiter ;
call sp_update_table_field();
drop procedure if exists sp_update_table_field;
delimiter 分节符命令,是不被java解析的!!!
分享到:
相关推荐
Java调用Mysql存储过程,Mysql存储过程源代码在该项目根目录下。
java 调用 mysql存储过程实例
相信大家都知道存储过程是在大型数据库系统中,一组为了完成特定功能的SQL语句集。存储过程是数据库中的一个重要对象,任何一个...Java调用mysql存储过程,实现如下,有需要的朋友们可以参考借鉴,下面来一起看看吧。
Java调用数据库存储过程[mysql测试通过]
主要介绍了Java调用MySQL存储过程并获得返回值的方法,实例分析了java实现MySQL存储过程的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
MyBatis调用MYSQL存储过程 返回多行 引用的包: asm-3.1.jar cglib-2.2.jar commons-logging-1.1.1.jar log4j-1.2.13.jar mybatis-3.0.4.jar mysql-connector-java-5.1.13.jar slf4j-api-1.5.8.jar slf4j-log4j12-...
Java调用存储过程--传入集合参数 具体的方法描述分析
JAVA通过MyBatis调用MySql存储过程和函数doc文档合集整理.zip
主要介绍了java调用mysql存储过程的方法,以实例形式较为详细的分析了mysql数据库的建立和存储过程的实现方法,需要的朋友可以参考下
如何在java中调用mysql的存储过程的事例-how Calling mysql storage process stories
使用Java struts+spring_ibaits+调用Mysql存储过程 实现增删改查
资源包中囊括了MySQL数据库中的存储过程的...该资源下所有内容都是本人的日常软件开发经验总结,对于初学者使用MySQL存储过程的程序员具有重要参考价值,问大家要10分是不过分的,用过就知道了,欢迎大家下载参考及使用
mysql存储过程编程教程: MySQL 存储过程编程基础 -- 指南,基本语句,存储过程中的 SQL 和错误处理 创建 MySQL 存储过程程序 -- 事务处理,内建函数,存储过程函数和触发器 在应用程序中使用 MySQL 存储...
mysql 存储过程 ,存储函数的调用示例
JAVA调用 MYSQL存储过程 JSP实现分页
根据自定义模板通过数据库表、视图和存储过程批量生成代码, 模板编辑和代码查看支持语法高亮 (Java, VB, T-SQL) 可以新增语法文件,文件格式类似于 EditPlus 软件附带模板包括: VB 三层结构中实体和...
analyData这是一个java定时任务,定时调用mysql的存储过程
主要介绍了Java实现用Mysql存取图片操作实例,本文讲解了使用BLOB类型保存和读取图片的代码实例,需要的朋友可以参考下
java 调用存储过程 mysql数据库 有数据库脚本
android通过jdbc方式连接mysql,并执行存储过程。连接数据库部分最好新建一个线程来实现和主线程分开。编译之前确定添加了mysql-connector-java-5.0.8-bin库否则会出错