先看下Python连接mysql数据库的整体流程
连接步骤
- 安装pymysql库
- 导入模块
- 创建与数据库的连接
- 获取cursor对象
from pymysql import *
def main():
host = ''
conn = connect(host=host,port=3306,user='admin',password='python',database='test1',charset='utf8')
cls = conn.cursor()
sql = "create table student(id int not null auto_increment primary key,name varchar(10) not null)"
content = cls.execute(sql)
print(content)
print(cls.fetchone())
cls.close()
conn.close()
if __name__ == "__main__":
main()
Connection对象
**作用:**建立与数据库的连接
语法:
conn = connect(host,port,user,password,database,charset)
参数:
- host:连接的mysql主机,如果本机是’localhost’
- port:连接的mysql主机的端口,默认是3306
- database:数据库的名称
- user:连接的用户名
- password:连接的密码
- charset:通信采用的编码方式,推荐使用utf
conn对象方法
conn.close()关闭连接
conn.commit()提交sql语句
conn.cursor()用于执行sql语句
Cursor对象
**作用:**获取Cursor对象,用于操作sql语句
语法:
cs = conn.cursor()
cursor对象属性
rowcount只读属性,表示最近一次execute()执行后受影响的行数
connection获得当前连接对象
cursor对象方法
- close()关闭
- execute(operation [, parameters ])执行语句,返回受影响的行数,主要用于执行insert、update、delete语句,也可以执行create、alter、drop等语句
- fetchone()执行查询语句时,获取查询结果集的第一个行数据,返回一个元组
- fetchall()执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回
注意
执行完最后要关闭各个对象,先关闭cursor对象再关闭connection对象