社区
MySQL
帖子详情
调用MySql带有返回参数的存储过程,获取返回参数值?
无幻
2011-10-17 11:35:59
直接用查询语句的方法是:
mysql> SET @increment = 10;
mysql> CALL p(@version, @increment);
mysql> SELECT @version, @increment;
怎么样保证在并发时,获取的输出参数是正确的呢?
...全文
474
11
打赏
收藏
调用MySql带有返回参数的存储过程,获取返回参数值?
直接用查询语句的方法是: mysql> SET @increment = 10; mysql> CALL p(@version, @increment); mysql> SELECT @version, @increment; 怎么样保证在并发时,获取的输出参数是正确的呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
聪明的一休
2011-10-20
打赏
举报
回复
用事务的话,可以判断返回值,如果有问题,可以回滚刚才的存储过程操作,让数据复原。
如果你用独立的数据库连接的话,这和并发一点关系都没有。
九月茅桃
2011-10-20
打赏
举报
回复
[Quote=引用 5 楼 akof1314 的回复:]
那照上面的情况,以事务方式可以解决不?
[/Quote]
可以解决你的问题的。
聪明的一休
2011-10-20
打赏
举报
回复
关键的一点,不管在什么编程语言里,多线程处理数据库操作,一个线程单独用一个数据库连接,完成操作后立即释放,这样就不需要担心类似的并发问题了
如果线程很多的话,一般都是通过实现数据库连接池来解决大并发的问题。
无幻
2011-10-20
打赏
举报
回复
两句有办法合成一句吗
ACMAIN_CHM
2011-10-20
打赏
举报
回复
解决不了,同一个连接内,只能是一个事务。
ACMAIN_CHM
2011-10-17
打赏
举报
回复
@变量是SESSION级的,不同SESSION中不会相互影响。
rucypli
2011-10-17
打赏
举报
回复
数据库有个叫事务的东西
无幻
2011-10-17
打赏
举报
回复
那照上面的情况,以事务方式可以解决不?
ChumpKlutz
2011-10-17
打赏
举报
回复
[Quote=引用 3 楼 akof1314 的回复:]
谢谢回答。
若是在编程语言中呢,不同多线程的查询控件,通过同一个连接数据库控件,是可能出现获取输出参数的不正确吗?
[/Quote]
同一个数据库连接就是一个SESSION
无幻
2011-10-17
打赏
举报
回复
谢谢回答。
若是在编程语言中呢,不同多线程的查询控件,通过同一个连接数据库控件,是可能出现获取输出参数的不正确吗?
程序员老关带您学SQL第2篇:
MySQL
数据库【为程序员和数据分析员】
本课程是SQL系列课程第2篇:
MySQL
数据库。
MySQL
篇
MySQL
数据库管理系统安装 10.1
MySQL
概述 10.1.1
MySQL
主要特点 10.1.2
MySQL
主要版本 10.2
MySQL
数据库安装和配置 10.2.1 Windows平台安装
MySQL
1.下载
MySQL
8.0社区版 2.安装
MySQL
8.0社区版 10.2.2 Linux平台安装
MySQL
1.更新软件仓库包索引 2.安装
MySQL
3.防火墙设置 4.启动
MySQL
服务 5.配置远程登录 10.2.3 macOS平台安装
MySQL
1.下载
MySQL
8.0社区版 2.安装
MySQL
MySQL
数据库管理系统日常管理 11.1 登录服务器 11.2 常见的管理命令 11.2.1 帮助命令 11.2.2 退出命令 11.2.3 数据库管理 11.2.4 用户管理 11.3 查看系统对象信息 11.3.1 查看有哪些库 11.3.2 查看有哪些表 11.3.3 查看表结构 11.4 执行脚本文件 11.4.1 不需要登录
MySQL
方式 11.4.2 需要登录
MySQL
方式 11.5 数据库备份与恢复 11.5.1 备份数据库 11.5.2 恢复数据库 11.5.3 实例:在Windows下备份到Linux下恢复 11.6
MySQL
图形界面管理工具 11.6.1 下载和安装
MySQL
Workbench 11.6.2 配置连接数据库 11.6.3 管理数据库 11.6.4 管理表 11.6.5 执行SQL语句
MySQL
中特有的SQL语句 12.1 自增长字段 12.2
MySQL
日期相关数据类型 12.3 限制
返回
行数 12.4 常用函数 12.4.1 数字型函数 12.4.2 字符串函数 12.4.3 日期和时间函数
MySQL
数据库开发 13.1
存储过程
13.1.1 使用
存储过程
重构“找出所有销售部所有员工信息”案例 13.1.2
调用
存储过程
13.1.3 删除储过程 13.2
存储过程
参数
13.2.1 IN
参数
13.2.2 OUT
参数
13.2.3 INOUT
参数
13.3 存储函数 13.3.1 创建存储函数 13.3.2
调用
存储函数 13.3.3 删除存储函数 13.4 触发器 13.4.1 触发器分类 13.4.2 创建触发器语法 13.4.3 使用NEW和OLD修饰符 13.4.4 示例:员工表操作更新日志 13.4.5 测试触发器
【MyBatis
调用
MySQL
存储过程
,有
返回
参数
】
场景搭建
MySQL
判断
参数
是否存在于某需要分割的字段中 通过
调用
存储过程
实现该功能后,需要在MyBatis中
调用
该
存储过程
并查询
返回
参数
: 方法实现 mapper.xml 在mapper.xml中新建【paramterMap】,包含传入
存储过程
的
参数
以及传出
存储过程
的
参数
<parameterMap id="pm" type="java.util.Map"> <parameter property="actualPlaceId" jdbcType="BIGINT"
mysql
output
参数
_JAVA程序
调用
MYSQL
带有
OUTPUT
参数
的
存储过程
JAVA程序
调用
MYSQL
带有
OUTPUT
参数
的
存储过程
实现思路(1) 给
存储过程
参数
列表中定义带OUTPUT 输出
参数
,关键字(
参数
名称 ,数据类型,OUTPUT)例如 :ps_isa_ywxx_insert(IN ps_ywbh VARCHAR(10) CHARACTER SET UTF8, IN ps_ywmc VARCHAR(20) CHARACTER SET UTF8, IN ps_...
JAVA程序
调用
MYSQL
带有
OUTPUT
参数
的
存储过程
JAVA程序
调用
MYSQL
带有
OUTPUT
参数
的
存储过程
实现思路 (1) 给
存储过程
参数
列表中定义带OUTPUT 输出
参数
,关键字(
参数
名称 ,数据类型,OUTPUT) 例如 : ps_isa_ywxx_insert(IN ps_ywbh VARCHAR(10) CHARACTER SET UTF8, IN ps_ywmc VARCHAR(20) CHARACTER SET
mybatis
调用
mysql
存储过程
(
返回
参数
,单结果集,多结果集)
一、接收一个
返回
值 使用Map接收
返回
参数
,output
参数
放在传入的param中 创建表 DROP TABLE IF EXISTS `demo`; CREATE TABLE `demo` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ...
MySQL
56,678
社区成员
56,708
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章