python3:操作mysql数据库入门

安装PyMySQL

使用pip命令安装PyMySQL库。

pip install PyMySQL

mysql登陆

基本操作:
登陆:mysql -uroot -h127.0.0.1 -P3306 -p
mysql -uroot -p(本机不用写host)
退出mysql:ctrl+z+回车,或者exit
端口号默认是3306,但是可以通过安装目录下的配置文件修改。

使用流程

  • 引用API模块
  • 获取与数据库的连接
  • 执行sql语句与存储过程
  • 关闭数据库连接

pymysql.connect()连接数据库函数

代码示例

import pymysql
#打开数据库连接
conn = pymysql.connect('localhost',user = "root",passwd = "root",db = "wensong")
print (conn)
print (type(conn))

运行结果:

<pymysql.connections.Connection object at 0x00000176FCEF9B88>
<class 'pymysql.connections.Connection'>

conn.cursor():获取游标

要想操作数据库,光连接数据是不够的,必须拿到操作数据库的游标,才能进行后续的操作,比如读取数据、添加数据。通过获取到的数据库连接实例conn下的cursor()方法来创建游标。游标用来接收返回结果
代码示例:

import pymysql
#打开数据库连接
conn = pymysql.connect('localhost',user = "root",passwd = "root",db = "wensong")
#获取游标
cursor=conn.cursor()
print(cursor)

运行结果:

<pymysql.cursors.Cursor object at 0x000001F7C66DEF08>

说明:cursor返回一个游标实例对象,其中包含了很多操作数据的方法,比如执行sql语句。

执行sql语句execute和executemany

execute(query,args=None)

  • 函数作用:执行单条的sql语句,执行成功后返回受影响的行数
  • 参数说明
    query:要执行的sql语句,字符串类型
    args:可选的序列或映射,用于query的参数值。如果args为序列,query中必须使用%s做占位符;如果args为映射,query中必须使用%(key)s做占位符

executemany(query,args=None)

  • 函数作用:批量执行sql语句,比如批量插入数据,执行成功后返回受影响的行数
  • 参数说明
    query:要执行的sql语句,字符串类型
    args:嵌套的序列或映射,用于query的参数值

注意
1.数据库性能瓶颈很大一部份就在于网络IO和磁盘IO,将多个sql语句放在一起,只执行一次IO,可以有效的提升数据库性能。推荐此方法
2.用executemany()方法一次性批量执行sql语句,固然很好,但是当数据一次传入过多到server端,可能造成server端的buffer溢出,也可能产生一些意想不到的麻烦。所以,合理、分批次使用executemany是个合理的办法

创建数据库

代码示例:

import pymysql
#打开数据库连接
conn = pymysql.connect('localhost',user = "root",passwd = "root",db = "wensong")
#获取游标
cursor=conn.cursor()
#创建pythonBD数据库
cursor.execute('CREATE DATABASE IF NOT EXISTS LOLPythonDB DEFAULT CHARSET utf8 COLLATE utf8_general_ci;')
cursor.close()#先关闭游标
conn.close()#再关闭数据库连接
print('创建pythonBD数据库成功')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值