温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

用python操作mysql数据库(之代码归类)

发布时间:2020-08-10 13:42:27 来源:网络 阅读:560 作者:TtrToby 栏目:数据库

用python操作mysql数据库(之代码归类)

index.py 这里只是假设一个模拟登陆

# -*- coding: utf-8 -*-
"""
Created on Sun Nov 27 18:54:29 2016
这是主程序文件
@author: toby
"""

from model.user import User
def main():
    username = "tantianran1"
    
    user = User()
    result = user.Check_Username(username)
    
    if not result:
        print '用户不存在,请重新登录'
    else:
        print '登录成功'

if __name__ == "__main__":
    main()

user.py

# -*- coding: utf-8 -*-
"""
Created on Sun Nov 27 19:48:03 2016
对数据库表的处理,py文件名和表名一一对应
所以,在这里的user.py文件是对数据库表为user的处理
@author: toby
"""
import sys
sys.path.append("/home/toby/workspace/date20161128")

from utility.sql_helper import MysqlHelper

class User(object):
    def __init__(self):
        self.__helper = MysqlHelper()
    
    def Get_data_by_id(self,ids):
        sql = "select * from user where id=%s"
        params = (ids,)
        return self.__helper.Get_One_Data(sql,params)
    
    def Check_Username(self,name):
        sql = "select * from user where name=%s"
        params = (name,)
        return self.__helper.Get_One_Data(sql,params)
'''
a = User()
print a.Check_Username('tantianran')
'''

sql_helper.py

# -*- coding: utf-8 -*-
"""
Created on Sun Nov 27 18:57:44 2016
数据处理层,处理数据的最底层,例如增删改查的功能
@author: toby
"""
import MySQLdb
class MysqlHelper(object):
    
    def __init__(self):
        hosts,users,password,dbname = '127.0.0.1','root','1qaz#EDC','test_db'
        self.conn = MySQLdb.connect(host=hosts,user=users,passwd=password,db=dbname)
        self.cur = self.conn.cursor(MySQLdb.cursors.DictCursor)
    
    def Get_Dict_data(self,sql,params):
        self.cur.execute(sql,params)
        data = self.cur.fetchall() #fetchall()获取所有数据
        self.cur.close()
        self.conn.close()
        return data

    def Get_One_Data(self,sql,params):
        self.cur.execute(sql,params)
        data = self.cur.fetchone() #fetchone()是获取一条数据
        self.cur.close()
        self.conn.close()
        return data

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI