Mysql+使用CallableStatement对象调用存储过程和存储函数+java链接数据库

本文详细介绍了如何在Java中使用CallableStatement对象调用MySQL的存储过程和存储函数。首先,针对存储过程的定义,强调了使用DELIMITER命令改变结束符号的重要性。接着,讨论了创建存储函数时可能出现的错误及解决方法,如配置log_bin_trust_function_creators变量。最后,阐述了CallableStatement的使用步骤,以实现与数据库的交互。
摘要由CSDN通过智能技术生成

1.存储过程

(1)定义过程时,使用 DELIMITER $$ 命令将语句的结束符号从分号 ; 临时改为两个 $$,使得过程体中使用的分号被直接传递到服务器,而不会被客户端(如mysql)解释。

delimiter $$
create procedure find(in num1 int)
begin
	select * from student where stuno = num1;
end$$
delimiter ;
call find(1);
delimiter $$
create procedure add_three_num(in num1 int,in num2 int,in num3 int,out re int)
begin
	set re = num1+num2+num3;
end$$
delimiter ;

2.存储函数

(1)建立存储函数的时候报错 “This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) ”,打开my.ini,添加上 log_bin_trust_function_creators=1

delimiter $$
create function add_twonum_function(a int,b int,c int) returns int
begin
	return a+b+c;
end$$
d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值