• python & MySQLdb(Three)


    #实现python封装
    # encoding=utf8
    import MySQLdb
    #定义类
    class MysqlHelper():
        def __init__(self,host,port,db,user,passwd,charset='utf8'):
           self.host=host
           self.port=port
           self.db=db
           self.user=user
           self.passwd=passwd
           self.charset=charset
         #初始化设置连接
    def connect(self):
            self.conn=MySQLdb.connect(host=self.host,port=self.port,db=self.db,user=self.user,passwd=self.passwd,charset=self.charset)
            self.cursor=self.conn.cursor()
        #进行连接
    def close(self):
            self.cursor.close()
            self.conn.close()
         #关闭连接
    def get_one(self,sql,param=()):
            result=None
            try:
                self.connect()
                self.cursor.execute(sql,param)
                result=self.cursor.fetchone()
                self.close()
            except Exception as e:
                print(e)
            return result
        #查找一行
    def get_all(self,sql,param=()):
            list=()
            try:
                self.connect()
                self.cursor.execute(sql,param)
                list=self.cursor.fetchall()
                self.close()
            except Exception as e:
                 print(e)
            return list
        #查找全部数据
    def insert(self,sql,param=()):
            return self.__edit(sql,param)
        #返回插入数据
    def update(self,sql,param):
            return self.__edit(sql,param)
        #返回更改后数据
    def delete(self,sql,param):
            return self.__edit(sql,param)
        #返回删除数据
    def __edit(self,sql,param):
            count=0
            try:
                self.connect()
                count=self.cursor.execute(sql,param)
                self.conn.commit()
                self.close()
            except Exception as e:
                print(e)
            return count
    实现添加操作:
    #encoding=utf8
    from fengzhaung import *
    sql="insert into stu(stu_name,stu_hometown,gender) values(%s,%s,%s)"
    stu_name=input("输入姓名")
    stu_hometown=input("请输入家乡:")
    gender=input("输入性别,1男,0女:")
    param=[stu_name,stu_hometown,bool(gender)]
    mysqlh=MysqlHelper('192.168.65.146',3306,'student','root','toor')
    count=mysqlh.insert(sql,param)
    if count==1:
        print ('ok')
    else:
        print('error')
    实现查找:
    #encoding=utf8
    from fengzhaung import *
    #id=input("输入编号")
    sql="select * from stu where stu_id=1"
    helper=MysqlHelper('192.168.65.146',3306,'student','root','toor')
    s=helper.get_one(sql)
    print(s)
    最后还有一点小问题,怎么自主输入进行查找??试了几种办法,发现不行。
    

      

    mmp我搞了半天发现是在做字符串的转换,这个是必然报错的,但是我们用连接操作就可以了,利用MySQLhelper的get_one方法去传就可以了,自己真的菜啊看来

    #方法一:
    #encoding=utf8
    from fengzhaung import *
    ih=input("输入编号")
    print(id(ih))
    sql="select * from stu where stu_id="+ih
    helper=MysqlHelper('192.168.65.146',3306,'student','root','toor')
    s=helper.get_one(sql)
    print(s)
    #方法二
    #encoding=utf8
    from fengzhaung import *
    ih=input("请输入编号:")
    sql="select * from stu where stu_id=%s"
    param=[ih]
    helper=MysqlHelper('192.168.65.146',3306,'student','root','toor')
    s=helper.get_one(sql,param)
    print(s)
  • 相关阅读:
    窗口宽高 滚动条滚动距离 元素的文档坐标和窗口坐标
    parentNode parentElement childNodes children
    ffmpeg 提取mp3
    Linux修改时区的正确方法
    pip
    wireguard
    Nextcloud挂载谷歌云盘搭建
    ts合并
    screen
    google drive
  • 原文地址:https://www.cnblogs.com/kk328/p/9901633.html
Copyright © 2020-2023  润新知