Python,pymysql简单使用。



基本操作:

    (1)导入pymysql: import pymysql

    (2)连接数据库: conn=pymysql.connect(host='localhost',user='root',passwd='root',db='ere',charset='utf8')    务必注意各等号前面的内容!charset参数可避免中文乱码

    (3)获取操作游标:cur=conn.cursor()

    (4)执行sql语句,插入记录:sta=cur.execute("insert 语句")  执行成功后sta值为1。更新、删除语句与此类似。

    (5)执行sql语句,查询记录:cur.execute("select语句") 执行成功后cur变量中保存了查询结果记录集,然后再用循环打印结果:

        for each in cur:

              print(each[1].decode('utf-8'))     # each[1] 表示当前游标所在行的的第2列值,如果是中文则需要处理编码

    (6)关闭数据库连接: cur.close(); conn.close();


一个完整的案例:

import pymysql

def connDB(): #连接数据库函数
    conn=pymysql.connect(host='localhost',user='root',passwd='123',db='ere',charset='utf8')
    cur=conn.cursor();
    return (conn,cur);

def exeUpdate(cur,sql):#更新语句,可执行update,insert语句
    sta=cur.execute(sql);
    return(sta);

def exeDelete(cur,IDs): #删除语句,可批量删除
    for eachID in IDs.split(' '):
        sta=cur.execute('delete from relationTriple where tID =%d'% int(eachID));
    return (sta);

def exeQuery(cur,sql):#查询语句
    cur.execute(sql);
    return (cur);

def connClose(conn,cur):#关闭所有连接
    cur.close();
    conn.close();
    
#调用连接数据库的函数        
conn,cur=connDB();

#调用更新记录的函数
sta=exeUpdate(cur, "insert into relationTriple values(null,'A','B','昵称','无')");
if(sta==1):
    print('插入成功');
else:
    print('插入失败');
    
#查询现有数据,并打印    
exeQuery(cur, "select * from relationTriple")  ;
for each in cur:
    print(each[0],each[1].decode('utf-8'));
    
# 批量删除记录,用户输入要删除的记录id号    
tempID=input('请输入要删除的编号 编号之间用空格分开:');
sta=exeDelete(cur, tempID);
if(sta==1):
    print('删除成功');
else:
    print('删除失败');

connClose(conn, cur);

from:http://www.ylzx8.cn/shujuku/mysql/1400396.html

posted @ 2016-03-16 10:08  猪猪虾  阅读(848)  评论(0编辑  收藏  举报