热线电话:13121318867

登录
2020-07-17 阅读量: 942
​Python基础(4):连接和使用MySQL

第一步:安装和导入模块pymysql

pip install pymysql

import pymysql

第二步:连接数据库

# 按照自己的电脑配置填写
connect = pymysql.connect(host='127.0.0.1',
                         port=3306, # 端口
                         user='root', # 登录用户名
                         password = '111111', # 密码
                         database = 'cda', # 默认连接哪个数据库
                         charset= 'utf8'
                         )

第三步:建立游标,执行sql

#建立游标,每次执行sql语句都要建立游标
cursor = connect.cursor()
# 要执行的sql代码写成字符串,用execute执行
sql = "create database test character set utf8 collate utf8_general_ci; "
cursor.execute(sql)

# 或者直接执行
cursor.execute("insert into test values('01' , N'赵雷' , '1990-01-01' , N'男');")

#插入二维列表数据
# 一次插入多条数据
data = [['02','钱电' ,55, '男'],
       ['03' , '孙风' , 22 , '女'],
       ['04' , '李云' , 33 , '男']]
sql = 'insert into cda0607 values(%s, %s, %s, %s)'
cursor.executemany(sql, data)

注意:插入(insert)、修改(update)、删除(delete)都需要执行connect.commit()后才能成功
#执行事务:原子性、一致性、隔离性、持久性
sql3 = """insert into Student values('04' , N'李云' , '1990-08-06' , N'男')
insert into Student values('05' , N'周梅' , '1991-12-01' , N'女')
insert into Student values('06' , N'吴兰' , '1992-03-01' , N'女')
insert into Student values('07' , N'郑竹' , '1989-07-01' , N'女')
insert into Student values('08' , N'王菊' , '1990-01-20' , N'女')"""

for i in sql3.splitlines():
    cursor.execute(i)
try: # 尝试运行下面代码, 如果不出错, 就正常运行
    # 如果出错了,则会自动运行 except下面的代码
   # 执行sql语句
   connect.commit()
except:
   # 发生错误时回滚
   connect.rollback()
 #在查询了数据之后, 需要自己去提取
cursor.fetchall() # 提取所有
cursor.fetchone() # 从查询到的数据里面提取一条
cursor.fetchmany(3) # 提取指定条数


28.3062
5
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子