PYMYSQL
创建Connection对象
通过pymysql.connect(地址, 用户名, 密码, 数据库)
方法来获取Mysql的Connection连接对对象
当我们对数据表进行修改时需要调用这个对象的commit()
方法进行提交
当所有对mysql的操作完成后,需要调用close()
方法来关闭连接对象
获取游标对象
调用mysql连接对象的cursor()
方法获取游标对象,cursor对象中有一个execute(sql)
方法, 我们所有对mysql增删改查的操作都要通过这个对象的execute(sql)
方法实现
这个对象和连接对象一样,需要在程序的最后关闭这个对象
创建数据表
创建一个包含id和name字段的表,表名为stu
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
#将创建数据表的sql语句传入游标对象的execute方法执行
sql = "create table stu(id int, name text)"
cursor.execute(sql)
#关闭游标对象和连接对象
cursor.close()
connection.close()
删除数据表
删除刚刚创建的stu表
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
#将删除数据表的sql语句传入游标对象的execute方法执行
sql = "drop table stu"
cursor.execute(sql)
#关闭游标对象和连接对象
cursor.close()
connection.close()
向数据表中插入数据
向表中插入如下数据
id | name |
---|---|
1 | a |
2 | b |
3 | c |
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
sql = "insert into stu values(1, 'a'),(2, 'b'),(3, 'c')"
try:
#将插入数据的sql语句传入游标对象的execute方法执行
cursor.execute(sql)
#对数据表中内容进行修改后需要执行connection对象的提交方法!
connection.commit()
except:
#发生异常时进行回滚
connection.rollback()
#关闭游标对象和连接对象
cursor.close()
connection.close()
删除数据表中的数据
删除表中id为3的数据
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
sql = "delete from stu where id = 3"
try:
#将删除数据的sql语句传入游标对象的execute方法执行
cursor.execute(sql)
#对数据表中内容进行修改后需要执行connection对象的提交方法!
connection.commit()
except:
#发生异常时进行回滚
connection.rollback()
#关闭游标对象和连接对象
cursor.close()
connection.close()
修改数据表中的内容
将表中id为2的学生姓名修改为bb
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
sql = "update stu set name = 'bb' where id = 2"
try:
#将修改数据的sql语句传入游标对象的execute方法执行
cursor.execute(sql)
#对数据表中内容进行修改后需要执行connection对象的提交方法!
connection.commit()
except:
#发生异常时进行回滚
connection.rollback()
#关闭游标对象和连接对象
cursor.close()
connection.close()
查询数据表中的内容
执行查询语句后,调用cursor对象的fetchall()
方法可以获取查询的内容
此方法将每行的所有字段返回的结果组成一个元组,并将所有行组成的元组嵌套在一个元组中返回
import pymysql
#获取连接对象
connection = pymysql.connect("localhost", "root", "123456", "test")
#获取游标对象
cursor = connection.cursor()
sql = "select * from stu"
#将修改数据的sql语句传入游标对象的execute方法执行
cursor.execute(sql)
#获取查询结果并打印
rs = cursor.fetchall()
print(rs)
#关闭游标对象和连接对象
cursor.close()
connection.close()
结果: