DB API数据库连接对象:connection
参数:
host:MySQL服务器地址
port:MYSQL服务器端口号
user:用户名
passwd:密码
db:数据库名称
charset:连接编码
connection对象支持的方法:
cursor():使用该连接创建并返回游标
commit():提交当前事务
rollback():回滚当前事务
close():关闭连接
示例: import MySQLdb conn = MySQLdb.Connect( host = '127.0.0.1' port = 3306) user = 'root' passwd = '123456' db = 'imooc' charset = 'utf-8' ) cursor = conn.cursor() print conn print cursor cursor.close() conn.close()
数据库游标对象cursor:
游标对象:用于执行查询和获取结果
cursor对象支持的方法:
参数名 | 说明 |
execute(op,[,args]) |
执行一个数据库查询和命令 |
fetchone() | 取的结果集的下一行 |
fetchmany(size) | 获取结果集的下几行 |
fetchall() |
获取结果集中剩下的所有行 |
rowcount | 最近一次execute返回数据的行数或影响行数 |
close() | 关闭游标对象 |
select示例: import MySQLdb conn = MySQLdb.Connect( host = '127.0.0.1' port = 3306) user = 'root' passwd = '123456' db = 'imooc' charset = 'utf-8' ) #创建连接对象 cursor = conn.cursor() #创建游标对象 sql = "select * from 表名" #创建sql语句 cursor.execute(sql) #调用cursor对象的execute方法执行sql print(cursor.rowcount) #打印获取到本地的行数 #使用fet*方法进行数据遍历,fet方法获取数据是从上一次获取数据之后 rs = cursor.fetchone() print(rs) rs = cursor.fetchman(3) print(rs) #二维遍历 rs = cursor.fetchall() for row in rs: print("userid=%s,username=%s" % row) cursor.close() #关闭cursor conn.close() #关闭conn
insert/update/delete更新数据示例: sql_insert = "SQL-insert语句" sql_update = "SQL-update语句" sql_delete = "SQL-delete语句" cursor.execute(sql_insert) #执行语句 print(cursor.rowcount) #打印语句执行后对数据的影响行数 conn.commit() #提交事务,会提交所有的cursor.execute