iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Python 执行 mysql 存储过程
  • 224
分享到

Python 执行 mysql 存储过程

存储过程Pythonmysql 2023-01-30 23:01:17 224人浏览 安东尼
摘要

Mysql 创建简单的临时表 tmp create database test; use test; DROP TABLE IF EXISTS `tmp`; CREATE TABLE `tmp` ( `id` int(11

Mysql 创建简单的临时表 tmp

create database test;
use test;

DROP TABLE IF EXISTS `tmp`;
CREATE TABLE `tmp`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;

INSERT INTO `tmp` VALUES (1, 'klvchen');
INSERT INTO `tmp` VALUES (2, 'lily');
INSERT INTO `tmp` VALUES (3, 'lucy');
INSERT INTO `tmp` VALUES (4, 'james');
INSERT INTO `tmp` VALUES (5, 'jim');

mysql 创建存储过程

delimiter $$        # 自定义 mysql 的分隔符
CREATE  PROCEDURE p1(
    in i1 int,      # 仅用于传入参数用
    in i2 int,
    inout i3 int,   # 既可以传入又可以当作返回值
    out r1 int      # 仅用于返回值用,外部传进来的值无用
)
BEGIN
    DECLARE temp1 int;
    DECLARE temp2 int default 0;
    
    set temp1 = 1;

    set r1 = i1 + i2 + temp1 + temp2;
    
    set i3 = i3 + 100;
        
        SELECT * FROM tmp;

end $$
delimiter ;

python 调用 mysql 存储过程

import pymysql

PY_MYSQL_CONN_DICT = {
    "host" : '192.168.0.214',
    "port" : 3306,
    "user" : 'root',
    "passwd" : '123456',
    "db" : 'tmpdb'
}

conn = pymysql.connect(**PY_MYSQL_CONN_DICT)
cusor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 调用 p1 存储过程,传入4个参数
cusor.callproc('p1', args=(1, 2, 3, 4))

# 返回获得的集合,即存储函数中的 SELECT * FROM tmp; 结果
res1 = cusor.fetchall()
print(res1)

# 以 Python 固定格式获取返回的值:@_存储过程名_0, 第一个返回值
cusor.execute("select @_p1_0, @_p1_1, @_p1_2, @_p1_3")
res2 = cusor.fetchall()
print(res2)

conn.commit()
cusor.close()
conn.close()
您可能感兴趣的文档:

--结束END--

本文标题: Python 执行 mysql 存储过程

本文链接: https://www.lsjlt.com/news/180469.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 执行 mysql 存储过程
    mysql 创建简单的临时表 tmp create database test; use test; DROP TABLE IF EXISTS `tmp`; CREATE TABLE `tmp` ( `id` int(11...
    99+
    2023-01-30
    存储过程 Python mysql
  • MySQL如何执行存储过程
    MySQL执行存储过程的步骤如下: 创建存储过程:首先需要使用CREATE PROCEDURE语句创建存储过程,并定义参数、执行逻...
    99+
    2024-03-06
    MySQL
  • mysql怎么执行多个存储过程
    要执行多个存储过程,可以使用MySQL的CALL语句。以下是一个示例:```CALL 存储过程1();CALL 存储过程2();```其中,"存储过程1"和"存储过程2"是你要执行的两个存储过程的名称。你可以根据实际情况替换它们。每个C...
    99+
    2023-08-11
    mysql
  • mysql存储过程不执行怎么解决
    如果MySQL存储过程不执行,可以尝试以下方法来解决问题:1. 检查存储过程的语法:确保存储过程的语法正确,没有语法错误,可以使用M...
    99+
    2023-08-11
    mysql
  • plsql怎么执行存储过程
    在 PL/SQL 中执行存储过程的方法有以下几种:1. 使用 EXECUTE 或 EXECUTE IMMEDIATE 语句:```s...
    99+
    2023-09-23
    plsql
  • jdbc怎么执行存储过程
    在Java中执行存储过程可以使用JDBC的CallableStatement对象。下面是一个执行存储过程的示例代码:java// 创...
    99+
    2023-10-24
    jdbc
  • prepareCall()方法执行存储过程
    在Java中,可以使用prepareCall()方法来执行存储过程。首先,需要获取一个连接对象 Connection,然后使用该连接...
    99+
    2023-09-14
    prepareCall()
  • navicat怎么执行存储过程
    在 navicat 中执行存储过程的步骤如下:连接到数据库。浏览并右键单击存储过程。选择“执行存储过程”。指定输入参数(可选)。执行存储过程。查看输出(可选)。 Navicat中执行存...
    99+
    2024-04-24
    navicat
  • mysql创建定时任务执行存储过程
    存储过程已添加好:https://blog.csdn.net/YXWik/article/details/127283316 1.创建定时器用来执行存储过程函数 create event delete_dataon schedu...
    99+
    2023-08-17
    mysql
  • oracle怎么并行执行存储过程
    在Oracle数据库中,存储过程可以通过使用并行执行来提高性能。以下是一些方法来实现并行执行存储过程: 使用并行提示:可以在存储...
    99+
    2024-04-09
    oracle
  • MyBatis中如何执行存储过程
    在 MyBatis 中执行存储过程,可以通过使用 select, insert, update, delete 等操作来调...
    99+
    2024-04-09
    MyBatis
  • MyBatis中怎么执行存储过程
    在MyBatis中执行存储过程通常有两种方法: 使用select标签调用存储过程: <select id="ca...
    99+
    2024-03-07
    MyBatis
  • plsql中如何执行存储过程
    在PL/SQL中执行存储过程可以通过以下几种方式: 使用EXECUTE命令: EXECUTE procedure_name; ...
    99+
    2024-04-20
    plsql
  • plsql怎么执行oracle存储过程
    在PL/SQL中执行Oracle存储过程可以通过以下步骤实现: 编写存储过程: 首先,需要在Oracle数据库中创建存储过程。可以...
    99+
    2024-04-09
    plsql oracle
  • jdbc执行存储过程是什么
    JDBC(Java Database Connectivity)执行存储过程是通过Java程序连接到数据库,并调用数据库中定义的存储...
    99+
    2023-10-24
    jdbc
  • SQLServer中怎么执行存储过程
    要在SQL Server中执行存储过程,可以按照以下步骤操作: 打开SQL Server Management Studio(S...
    99+
    2024-03-12
    SQLServer
  • plsql中怎么执行存储过程
    在PL/SQL中执行存储过程可以通过以下步骤实现: 使用 EXECUTE 或者 EXEC 关键字来执行存储过程。 在EXECUTE...
    99+
    2024-03-12
    plsql
  • mysql中执行存储过程的语句怎么写
    这篇文章主要介绍了mysql中执行存储过程的语句怎么写的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql中执行存储过程的语句怎么写文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • 怎么使用MyBatis执行存储过程
    要使用MyBatis执行存储过程,首先需要在MyBatis的Mapper XML文件中编写一个对应的存储过程的SQL语句。然后在Ja...
    99+
    2024-04-23
    MyBatis
  • oracle存储过程执行日志在哪
    oracle存储过程执行日志位于以下文件夹:windows:%oracle_base%\diag\rdbms[oracle_sid][oracle_sid]\trace\unix:$or...
    99+
    2024-04-19
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作