[代码笔记] python 之 mysql操作(CRUD)

来源:互联网 发布:林心如人设崩塌知乎 编辑:程序博客网 时间:2024/06/05 20:21
#!python#文件名: demo_mysql.pyimport pymysql#打开数据库连接db=pymysql.connect('localhost','root','root','python')#使用cursor()方法创建一个游标对象cursorcursor = db.cursor()db.set_charset('utf8')#使用execute()方法执行sql查询cursor.execute('select version()')#使用fetchone()获取单条数据.data=cursor.fetchone()print('DataBase version: %s'% data)db.close()print('------------------------------------')#CRUD走起##插入,修改,删除:一个套路,注意sql语句可以拼接变量db=pymysql.connect('localhost','root','root','python')db.set_charset('utf8')cursor=db.cursor()try:    for x in range(1,10):        cursor.execute("insert into emp(name,sex) values('%s','%s')"%\                       ('Name_'+str(x),'男'))    db.commit()#提交到数据库    print('新增成功!')except:    db.rollback()#回滚数据库    raisedb.close()##查询def getList():    db=pymysql.connect('localhost','root','root','python')    db.set_charset('utf8')    cursor=db.cursor()    cursor.execute('select * from emp')    lst=cursor.fetchall()    print('\n\n----------------------------------------')    for row in lst:        print('%d\t%s\t%s'%(row[0],row[1],row[2]))    print('----------------------------------------\n')getList()##更新db=pymysql.connect('localhost','root','root','python')db.set_charset('utf8')cursor=db.cursor()try:    cursor.execute("update emp set sex='女'")    db.commit()#提交到数据库    print('更新成功!')except:    db.rollback()#回滚数据库    raisedb.close()getList()##删除db=pymysql.connect('localhost','root','root','python')db.set_charset('utf8')cursor=db.cursor()try:    cursor.execute("delete from emp")    db.commit()#提交到数据库    print('删除成功!')except:    db.rollback()#回滚数据库    raisedb.close()try:    getList()except:    print('No Data')    raise

打印如下:

DataBase version: 5.5.38
————————————
新增成功!

—————————————-
10 Name_1 男
11 Name_2 男
12 Name_3 男
13 Name_4 男
14 Name_5 男
15 Name_6 男
16 Name_7 男
17 Name_8 男
18 Name_9 男
—————————————-

更新成功!

—————————————-
10 Name_1 女
11 Name_2 女
12 Name_3 女
13 Name_4 女
14 Name_5 女
15 Name_6 女
16 Name_7 女
17 Name_8 女
18 Name_9 女
—————————————-

删除成功!

—————————————-
—————————————-

0 0