pythonDB

来源:互联网 发布:fdd lte td lte 知乎 编辑:程序博客网 时间:2024/06/08 14:06
pythondb1.png
pythondb2.png

db3.png

db4.png

db5.png

db6.png

db7.png

db8.png

9.png

10.png


import sys
import MySQLdb
class TransferMoney(object):
    
    def __init__(self, conn):
        self.conn = conn
        self.cursor = conn.cursor()
    
    def checkAccValid(self, source_acctid):
        self.cursor.execute("select * from bank where account=%s", source_acctid)
        if self.cursor.rowcount != 1:
            raise Exception("account %s not exist" % source_acctid)
        
    
    
    def transfer(self, source_acctid, target_acctid, money):
        
        self.checkAccValid(source_acctid)
        self.checkAccValid(target_acctid)
        self.cursor.execute("update bank set money=money-%s  where account=%s" % (money, source_acctid))
        self.cursor.execute("update bank set money=money+%s  where account=%s" % (money, target_acctid))
    
   
if __name__ == "__main__":
    source_acctid = sys.argv[1]
    target_acctid = sys.argv[2]
    
    money = sys.argv[3]
    conn = MySQLdb.connect(host='127.0.0.1', port=3306, user='root', passwd='root1', db='wuke', charset='utf8')
    transfor = TransferMoney(conn)
    try:
        transfor.transfer(source_acctid,target_acctid,money)
        conn.commit()
    except Exception as e:
        conn.rollback()
        print e
        
0 0
原创粉丝点击