python小白学习笔记(07)

四十一、数据库

        在python中,使用第三方库:pymysql来完成对mysql数据库的操作

        安装:

pip install pymysql

      1、创建到MySQL的数据库连接 

        首先要进行导包操作,接着创建一个链接对象,填写对应的参数即可完成操作,完成操作后,记得要用close()关闭连接,具体代码如下

from pymysql import Connection
# 获取到MySQL数据库的链接对象
coon = Connection(
    host = 'localhost', # 主机名(或者IP地址)
    port = 3306, # 端口,MySQL默认为3306
    user = 'root', # 账户名
    password = '123456' # 密码
)
# 打印MySQL数据库软件信息
print(coon.get_server_info())  # 当输出你数据库的相关版本时则证明已经成功链接了
# 关闭数据库的链接
coon.close()

        2、执行非查询性质的sql语句:

        在成功连接了数据库的基础上,通过建立游标对象来执行对应的sql语句,记得先用数据库对象选择需要的数据库,具体代码如下;

from pymysql import Connection
# 获取到MySQL数据库的链接对象
coon = Connection(
    host = 'localhost', # 主机名(或者IP地址)
    port = 3306, # 端口,MySQL默认为3306
    user = 'root', # 账户名
    password = '123456' # 密码
)
# 获取游标对象
cursor = coon.cursor()
coon.select_db('aaa')  # 选择数据库,如果没有aaa则需要提前创建一个
# 使用游标对象,执行sql语句
cursor.execute('CREATE TABLE test(ID INT, INFO VARCHAR(255))')
#关闭数据库的链接
coon.close()

        3、执行查询性质的sql语句:

        前置内容跟非查询类似,只是需要调用fetchall()来接收查询的数据,接收的数据为元组类型,具体代码如下;

from pymysql import Connection
# 获取到MySQL数据库的链接对象
coon = Connection(
    host = 'localhost', # 主机名(或者IP地址)
    port = 3306, # 端口,MySQL默认为3306
    user = 'root', # 账户名
    password = '123456' # 密码
)
# 获取游标对象
cursor = coon.cursor()
coon.select_db('TEST02')  # 选择数据库,如果没有aaa则需要提前创建一个
# 使用游标对象,执行sql语句
cursor.execute('SELECT * FROM ACCOUNT')
result:tuple = cursor.fetchall()   # 会以元组的形式输出
for row in result:
    print(row)
#关闭数据库的链接
coon.close()

        4、执行插入性质的sql语句:

        直接是能直接对数据库的表进行操作的,但是对于插入来说,没有进行事务的提交的话,是无法将内容添加到数据库中的,所以插入性质的sql语句,需要多一步操作是commit(),具体代码如下;

from pymysql import Connection
# 获取到MySQL数据库的链接对象
coon = Connection(
    host = 'localhost', # 主机名(或者IP地址)
    port = 3306, # 端口,MySQL默认为3306
    user = 'root', # 账户名
    password = '123456' # 密码
)
# 获取游标对象
cursor = coon.cursor()
coon.select_db('TEST02')  # 选择数据库,如果没有aaa则需要提前创建一个
# 使用游标对象,执行sql语句
cursor.execute('insert into classes values (999,2021,"计算机科学","20班")')
# 通过commit确认
coon.commit()
# 关闭连接
coon.close()

        5、自动commit

        如果不想手动commit确认,可以在构建连接对象的时候,设置自动commit的属性

# 获取到MySQL数据库的链接对象
coon = Connection(
    host = 'localhost', # 主机名(或者IP地址)
    port = 3306, # 端口,MySQL默认为3306
    user = 'root', # 账户名
    password = '123456', # 密码
    autocommit = True # 设置自动提交
)

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逍 朽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值