Python学习笔记之数据库连接

一、连接数据库

import pymysql
# 1.创建与数据库的连接
connect = pymysql.connect(host = 'localhost',user = 'root',
                          passwd = '123456',db= 'mariadb_learn',charset = 'utf8')
#host : 连接的数据库的主机ip地址 localhost 代表本地主机
#user : 用户身份
#passwd : 登录密码
#db : 连接的数据库名称 
#charset : 数据库字符编码设置
connect.close()# 关闭连接

二、创建游标

cur = connect.cursor()
users = [('user2', '123'), ('user3', '123'), ('user4', '123')]
try:
    cur.execute('create table userinfor(username varchar(10), passwd varchar(10));')
except Exception as Error:
    print(Error,type(Error))
    print(isinstance(Error,pymysql.err.InternalError))
    if isinstance(Error,pymysql.err.InternalError):   #判断表已经存在
      for username ,passwd in users:     #使用循环对表添加信息,每次添加一条。
          cur.execute('insert into userinfor values("%s", "%s");'%(username,passwd))
finally:
    connect.commit()  # 对于数据库操作,一定要提交;
    cur.close()       #先关闭游标
    connect.close()   #关闭连接

二、executemany()函数

        excutemany是批量操作,我们可以通过这个函数将所需要插入的信息一次性插入,节省时间。
    insert_sqli = 'insert into userinfo values(%s, %s);'
    cur.executemany(insert_sqli, users)
    关与 execute()与executemany()的插入速度,我推荐这篇博文Python MySQLdb 循环插入execute与批量插入executemany性能分析






猜你喜欢

转载自blog.csdn.net/m0_37717595/article/details/80528268