1. 程式人生 > >在python中呼叫儲存過程

在python中呼叫儲存過程

儲存過程一般來說在資料庫中直接定義,然後在python中呼叫

新建儲存過程:
這裡寫圖片描述
執行
這裡寫圖片描述
結果符合預期,接下來在python呼叫它

import  pymysql
conn = pymysql.connect(host='127.0.0.1', user='root', password='root', database='fruitdb', charset='utf8')
cur = conn.cursor()
cur.callproc('searchAllFruit')
conn.commit()
result = cur.fetchall()
print('{0}   {1}   {2}   {3}'
.format('名稱', '價格', '數量', '總價')) for row in result: name = row[0] price = row[1] count = row[2] total = row[3] print('{0} {1} {2} {3}'.format(name, price, count, total)) conn.close()

執行完結果一致,成功啦!
這裡寫圖片描述

*注意:*
使用callproc()方法時,儲存過程名需要打“ ”,引數以元組的形式跟在後面,輸出的引數用數字0來佔位。

相關推薦

python呼叫儲存過程

儲存過程一般來說在資料庫中直接定義,然後在python中呼叫 新建儲存過程: 執行 結果符合預期,接下來在python呼叫它 import pymysql conn = pymysql.connect(host='127.0.0.1', u

在PL/SQL呼叫儲存過程--oracle

在oracle10中寫好了儲存過程,程式碼如下: CREATE OR REPLACE Procedure Proc_Insert ( sName in varchar2, sAge in int,

oracle呼叫儲存過程

儲存過程的呼叫 增加,修改,刪除的儲存過程呼叫 帶輸入引數的儲存過程呼叫 帶輸出引數的儲存過程的呼叫:此處以登入成功還是失敗為例.返回0 或者1 增加,修改,刪除的儲存過程呼叫

shell呼叫儲存過程

將需要呼叫的儲存過程寫在檔案tasklist.txt中 下面將批量執行檔案列表中的儲存過程 #!/bin/ksh if [ $# -eq 0 ];then echo "no paramer please input one paramer A OR B" exit fi e

oracle 函式呼叫儲存過程

  專案中開發了一個儲存過程來給報表提供資料來源,而程式業務邏輯中需要有一個對該資料來源進行判斷的功能,開始是使用拼接sql的方式在儲存過程中對應sql的外面包裝一層來進行處理,但是覺得這種方式拼接的sql太長,而且以後業務邏輯改變要同時修改儲存過程和程式碼,容易發生遺漏,

ASP呼叫儲存過程、語法、寫法-sql server資料庫,return,output

ASP與儲存過程(Stored Procedures)的文章不少,但是我懷疑作者們是否真正實踐過。我在初學時查閱過大量相關資料,發現其中提供的很多方法實際操作起來並不是那麼回事。對於簡單的應用,這些資料也許是有幫助的,但僅限於此,因為它們根本就是千篇一律,互相抄襲,稍微複雜

CI框架呼叫儲存過程報錯:Commands out of sync; you can't run this command now

專案開發中碰到的問題,資料庫寫了個儲存過程,在ci框架中呼叫此儲存過程,碰到了問題,接觸ci框架時間不長,摸索了好半天,才終於解決。 問題如下: $common = $this->db->query("call welcome_common_data

Java呼叫儲存過程 -- Mybatis

Java中呼叫儲存過程 -- Mybatis public interface XXXMapper { ​ /* * 1.沒有出參(返回值,void) 返回不了值,返回值都封裝在入參的實體類或Map中(引用型別) * 原因:存過的入參、出參都在java呼叫的入參中

在Java呼叫儲存過程(詳細)

本文闡述了怎麼使用DBMS儲存過程。我闡述了使用儲存過程的基本的和高階特性,比如返回ResultSet。本文假設你對DBMS和JDBC已經非常熟悉,也假設你能夠毫無障礙地閱讀其它語言寫成的程式碼(即不是Java的語言),但是,並不要求你有任何儲存過程的程式設計經歷。  儲

MyBatis呼叫儲存過程和函式

一.呼叫儲存過程    1.首先在資料庫中定義儲存過程,定義的儲存過程的程式碼如下: //定義儲存過程create or replace procedure pag_add(p1 varchar2,p2 varchar2,p3 out varchar2) as begin

資料庫儲存過程,事務 jfinal呼叫儲存過程,事務

mysql DELIMITER $$ CREATE PROCEDURE `student`.`ceshi`(n INT,j CHAR(1)) BEGIN IF j = 'h' THEN SELECT * FROM blog

java呼叫儲存過程並傳遞list集合引數的方法

sql: CREATE OR REPLACE TYPE test as object( FID NUMBER,  NUM nVARCHAR2(30),  TESKID NUMBER,  CID NUMBER, USERCODE nVARCHAR2(100) ) CREA

C#呼叫儲存過程

1、沒有引數沒有返回值   2、有引數沒有返回值  3、有引數有返回值   下面就這幾種情況分別舉例:1、沒有引數沒有返回值,象這種情況最簡單。 儲存過程 USE Northwind  CREATE PROC novaluenoparameter  AS    SE

在SSH專案呼叫儲存過程

一. 建表與初始化資料 create database user create table userInfo ( id int identity(1,1) primary key not null, name varchar(20) not null, age int no

Wcf Ria Services學習筆記(三):WCF RIA Service呼叫儲存過程

            專案中碰到要呼叫儲存過程的情況!但Wcf Ria Service呼叫儲存過程似乎有點麻煩!將碰到的問題簡單做個記錄。 分別以幾個特別的儲存過程為例說明下,Wcf Ria Service中怎麼樣呼叫儲存過程。 (一)帶輸入引數和輸出引數的儲存過程。

.net呼叫儲存過程

摘要:在一個專案的開發中,經常會呼叫資料庫中的儲存過程。可是,幾乎所有儲存過程的呼叫都是同一個模式,主要區別就在於建立的每個引數型別、值等不一樣。那麼,能不能實現通過一個函式(或者類)呼叫所有的儲存過程呢?本文在利用資料庫提供的系統表原理上,實現了統一呼叫的方法,該方法只需

在PL/SQL Developer和oracle如何新建儲存過程呼叫儲存過程

1、新建程式視窗,選擇Procedure 2、寫入procedure以後,要執行程式進行編譯 3、編譯成功以後,有三種方法可以執行procedure 第一種是在命令視窗執行exec procedure name SQL> exec procedure_name();

建立和呼叫儲存過程:查詢Stu資料庫某個同學的選修課程的資訊,包括學號,姓名,課程名稱,成績

CREATE PROCEDURE proc_select--建立儲存過程 @Sno char(10) output,--輸入輸出引數 @Sname varchar(20) out,--輸出引數 @Cno char(4) out,--輸出引數 @grade tinyint

Oracle建立儲存過程呼叫過程(一)

1、定義         所謂儲存過程(Stored Procedure),就是一組用於完成特定資料庫功能的SQL語句集,該SQL語句集經過 編譯後儲存在資料庫系統中。在使用時候,使用者通過指定已經定義的儲存過程名字並給出相應的儲存過程引數 來呼叫並執行

java使用mybatis呼叫儲存過程,拿到返回值(單引數返回值)

service業務層呼叫dao層 注意:返回值直接從物件裡獲取 不需要拿物件接收再獲取 dao.uspGetUser(userPO);//物件封裝了儲存過程的入參和出參 count = userPO.getCount(); //count 是儲存過程的返回值 dao層介面 pu