操做mysql

#建链接
#设游标
#执行sql语句
import pymysql
ip ="1.1.1.1"
user = 'admin'
password="123456" #需是字符串
db='student'
port=3306
charset = 'utf8' #注意是utf8,而不是utf-8
conn = pymysql.connect(host=ip , port=port,
user=user, password=password,
db=db, charset=charset
) #创建链接,port能够不写,默认是3306
cur= conn.cursor(pymysql.cursors.DictCursor)#游标
sql = 'select *from user limit 10;'
cur.execute(sql) #执行sql语句,不返回结果
#conn.commit() #提交;执行insert、update的时候要commit一下;若是不写的话,conn中加一个参数autocommit=True,自动提交
one = cur.fetchone()  #获取一条数据,若执行fetchall后,其余数据都取不到了,相似于文件指针
many = cur.fetchmany() #获取多条数据,输入几就是取几条
all = cur.fetchall() #获取全部数据,数据量比较小的时候使用,数据量大的话 仍是fetchone
cur.close()#关游标
conn.close()#关链接
print(one) #cur加上pymysql.cursors.DictCursor,这个取出来是一个字典
print(many) #cur加上pymysql.cursors.DictCursor,这个取出来是一个list,里面值是字典
print(all) #cur加上pymysql.cursors.DictCursor,这个取出来是一个list,里面值是字典

##封装成函数
def op_mysql(sql):    db_info = {'user': 'jxz', 'password': '123456',            'host': '1.1.1.1', 'db': 'stu', 'port': 3306, 'charset': 'utf8',            'autocommit': True}    conn = pymysql.connect(**db_info)  # 创建链接    cur = conn.cursor(pymysql.cursors.DictCursor)  # 游标    cur.execute(sql)  # 执行sql语句,insert 、update 、delete    result = cur.fetchall()    cur.close()    conn.close()    return result
相关文章
相关标签/搜索