Python学习_17 数据库操作(二)
1、游标
游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。可以把游标当作一个指针,它可以指定结果中的任何位置,然后允许用户对指定位置的数据进行处理
首先要安装cursor模块,安装用命令pip install cursor安装
数据库操作:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018\5\8 0008 20:49
# @Author : xiexiaolong
# @File : demon1.py
import
pymysql
import
cursor
conn = pymysql.connect(host="193.112.207.252",port=3306,user="yanzi",passwd="123",db="yanzi")
cus = conn.cursor()
sql =
'''INSERT into test (id,name) VALUES ("342","yanzi")'''
#sql = '''select * from test'''
cus.execute(sql)
result = cus.fetchall()
print(result)
cus.close()
conn.close()
注:mysql中部分单词需大写;
2、游标的常用方法
cursor()
创建游标对象
close() 关闭游标对象
excute(sql[args]) 执行一个数据库查询或命令
fetchone() 得到结果集的下一行
fetchmany(size=10) 得到结果集的下几行
fetchall() 得到结果集中剩下的所有行
3、数据库连接池
python编程中可以使用MySQLdb进行数据库的连接及诸如查询/插入/更新等操作,但是每次连接mysql数据库请求时,都是独立的去请求访问,相当浪费资源,而且访问数量达到一定数量时,对mysql的性能会产生较大的影响。因此,实际使用中,通常会使用数据库的连接池技术,来访问数据库达到资源复用的目的。
4、常用简单sql
select 列名 from 表名 where 条件判断
select a.id a.name, c.id from a join c on c.组id = a.id
select * from table_name limiet 10;
show create table_name
desc table_name
insert into table_name (id, name, age) values(1, 'ling', 18), (), (), ();
delete from table where 条件判断
truncate 只清楚数据,不删除表结构
drop 删除整个表结构
update table_name set 列名=xxx, where 条件
create index 库名_表名_列名1_列名2 (列名1, 列名2)