安装方法如下(如果已安装,则可跳过这一安装过程):
进入Terminal
在命令行中输入pip install pymysql
然后命令行出现如下显示
如果这一代码没有用,输入完毕后没有出现如上的安装命令显示,可以尝试一下输入
python -m pip install pymysql ,输入完毕后也可以出现如下安装命令行。
至此安装完毕。
1.2然后导入库输入import pymysql
1.3连接数据库user为自己的用户名,多数为root,password是自己mysql设置的密码,database是自己已有的数据库,如果没有就在mysql中创建一个数据库。
至此已完成数据库连接。
实例如下:
1.4操作的基本流程(1)首先声明一个游标。
# 使用 cursor() 方法创建一个游标对象
cursor = db.cursor()
(2)然后复制sql语句,语句根据不同的操作进行改变。
sql= 'sql操作语句',实例如下:sql查询语句
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('%s', '%s', %s, '%s', %s)" % ('Mac', 'Mohan', 20, 'M', 2000)
(3)执行sql语句
(4)关闭数据库连接
db.close()
整个流程操作完整实例如下:
2.创建数据库表 2.1声明一个游标cursor = db.cursor()
2.2创建表之前先检查是否存在,如果存在则删除cursor .execute('DROp TABLE IF EXISTS Student')
2.3编辑sql语句sqlQuery = "CREATE TABLE Student(Name CHAr(20) NOT NULL ,Email CHAr(20),Age int )"
cur.execute(sqlQuery)
2.4实例 3.数据库插入 3.1编辑sql语句sqlQuery=" INSERT INTO Student (Name, Email, Age) VALUE (%s,%s,%s) "
3.2编辑准备插入的值value=('Mike','123456@163.com',20)
3.3执行sql语句try:
cursor .execute(sqlQuery,value)
db.commit()
print('数据插入成功!')
except pymysql.Error as e:
print("数据插入失败:"+e )
db.rollback()
sqlQuery = "SELECT * FROM Student"
4.2使用fetchall()方法接收全部的返回结果行Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。
fetchone(): 该方法获取下一个查询结果集。结果集是一个对象
fetchall(): 接收全部的返回结果行.
rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。
try:
cursor .execute(sqlQuery)
results=cur.fetchall()
for row in results:
name=row[0]
email=row[1]
age=row[2]
print('Name:%s,Email:%s,Age:%s'%(name,email,age))
except pymysql.Error as e:
print("数据查询失败:"+str(e))
sqlQuery = "UPDATe Student SET Name= %s WHERe Name=%s"
5.2编辑更新的信息value = ('John', 'updated name')
5.3提交修改try:
cursor .execute(sqlQuery, value)
db.commit()
print('数据更新成功!')
except pymysql.Error as e:
print("数据更新失败:"+str(e))
# 发生错误时回滚
db.rollback()
sqlQuery = "DELETE FROM Student where Name=%s"
6.2编辑更新的信息value = ('John')
6.3提交修改try:
cursor .execute(sqlQuery, value)
db.commit()
print('Date Deleted Successfully')
except pymysql.Error as e:
print("数据删除失败:"+str(e))
# 发生错误时回滚
db.rollback()
sqlQuery='DROP TABLE IF EXISTS Student'
7.2提交修改cursor .execute(sqlQuery)
print('表删除成功!')



