python连接mysql数据库和实例

一、Python连接MySQL数据库

  1. 安装pymyslq

    #打开终端输入
    pip install pymysql
    
  2. 导入模块

    import pymysql
    
  3. 创建数据库连接

    db = pymysql.connect(host='localhost', port=3306, user='root', passwd='123456', db='testdb', charset='utf8')
    

    使用pymysql.Connect()方法创建连接,参数类型说明 :

    host:字符串, MySQL服务器地址

    port:整数 MySQL服务器端口号3306

    user:字符串, 用户名

    password或者passwd:字符串 密码

    db:字符串, 数据库名称

    charset:字符串,连接编码

  4. 使用cursor()方法创建游标对象

    cursor = db.cursor()
    
  5. 在此时可以写sql语句

    sql = "select * from student"
    #前提你的testdb数据库中要有student表
    
  6. 使用execute()方法执行sql语句

    cursor.execute(sql)
    
  7. 关闭游标

    cursor.close()
    
  8. 关闭数据库

    db.close()
    

这只是简单的查询一下数据库的表信息,并未对数据库里面的信息进行改动,对于其他操作我们一般加上事务操作语言.

二、两个比较常见的实例

  • 向MySQL中的表添加数据

    import pymysql 
    
     # 获取数据库连接对象 
    
    conn = pymysql.Connect(
    
         host='localhost',
    
         port=3306,
    
         user='root',
    
         password='123456',
    
         database='mydb',
    
         charset='utf8', 
    
    ) 
    
     cursor = conn.cursor() # 获取游标操作对象 
    
    sql = "insert into stu(name,age)values('%s',%d)" 
    
    try:
    
        cursor.execute(sql%('狗蛋',18))   # 执行SQL
    
        conn.commit() # 提交
    
        print("插入数据成功!") 
    
    except Exception as e:
    
        print("异常信息为:",e)
    
        conn.rollback()  # 回滚 
    
    finally:
    
        cursor.close()
    
        conn.close()
    
  • python连接Mysql进行注册用户和登录

    import pymysql 
    
     def getConn():
    
       # 获取连接的函数
    
        conn = pymysql.connect(
    
            host='localhost',
    
            port=3306,
    
            user='root',
    
            password='123456',
    
            database='mydb', 
    
            charset='utf8'
    
        )
    
        return conn 
    
    
    
     def register(username,password):
    
       # 注册函数
    
        conn = getConn()
    
        cursor = conn.cursor()
    
        try:
    
            sql = "insert into user(username,password)values('{}','{}')".format(username,password)
    
            cursor.execute(sql)
    
            conn.commit()
    
            print("注册成功!")
    
        except Exception as e:
    
            conn.rollback()
    
            print("注册失败,失败原因为:",e)
    
        finally: 
    
            cursor.close()
    
            conn.close() 
    
    
    
     def login(username,password): 
    
      # 登录函数
    
        conn = getConn()
    
        cursor = conn.cursor()
    
        try:
    
            sql = "select username from user where username='{}' and password='{}'".format(username,password)
    
            cursor.execute(sql)
    
            item = cursor.fetchone()
    
            conn.commit()
    
            if item: 
    
                print("恭喜",item[0],"登录成功!")
    
            else:
    
                print("用户名或密码错误!")
    
        except Exception as e:
    
            conn.rollback()
    
            print("登录异常,异常原因为:",e)
    
        finally:
    
            cursor.close()
    
            conn.close()
    
    

你可能感兴趣的:(python连接mysql数据库和实例)