検索

ホームページ  >  に質問  >  本文

python调用mysql存储过程没有反应

建表:

drop table if exists `Account`;
CREATE TABLE `Account` (
`id` BIGINT(20) NOT NULL,
`Name` VARCHAR(100) NOT NULL,
`pwd` VARCHAR(100) NOT NULL,
`times` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0'
)ENGINE=InnoDB

插入数据:

INSERT INTO `Account` (`id`, `Name`, `pwd`, `times`) VALUES
(1, 'Messiah', '59data', 0),
(2, 'zmx', 'data', 0),
(3, '59store', '盖亚', 1);

建立储存过程:

DELIMITER //
DROP PROCEDURE IF EXISTS `proctest`//
CREATE PROCEDURE`proctest`()
BEGIN
insert into  Account
VALUES(5,'盖亚','59store',9);
END //

Python 脚本:

#!/usr/bin/env python
# -*- coding: utf8 -*-
import MySQLdb
import time
import os, sys, string
conn = MySQLdb.connect(host='192.168.1.59',user='59data',passwd='59store',db='test')
cur =conn.cursor()
#sql='call proctest'
#cur.execute(sql)
cur.callproc('proctest',())
cur.close()
conn.close()

Python 脚本用 MySQLdb 模块 callproc 方法调用 mysql 存储过程没有任何反应

ringa_leeringa_lee2785日前650

全員に返信(2)返信します

  • ringa_lee

    ringa_lee2017-04-17 17:51:40

    トランザクションの送信が不足していると推測されます

    リーリー

    返事
    0
  • 怪我咯

    怪我咯2017-04-17 17:51:40

    パスワードとユーザー名が正しいか、データベースに db-test が既に存在しますか?

    返事
    0
  • キャンセル返事