python操作MySQL
环境准备:
安装python,pip,mysql,PyMySql
pymysql是什么:python连接MySQL数据库时需要一个驱动用于与数据库交互,而PyMySQL就是一个使python连接到数据库的库。
安装PyMySql:通过pip install PyMySql安装
连接数据库:
#_*_codeing:utf-8_*_ #连接mysql数据库 import pymysql #建立与数据库的连接 conn = pymysql.connect( host='localhost', user='root', password='123456', database='interfacedemo', charset='utf8' ) #使用cursor方法获取可以执行sql语句游标对象 cursor=conn.cursor() #创建表 # 使用 execute() 方法执行 SQL,如果表存在则删除 cursor.execute("DROP TABLE IF EXISTS users") sql="""CREATE TABLE users( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, username varchar(20) NOT NULL, password varchar(255) NOT NULL, realname varchar(255) NOT NULL, sex tinyint(1) DEFAULT NULL, phone varchar(255) NOT NULL UNIQUE, utype tinyint(1) DEFAULT NULL, addtime datetime DEFAULT NULL, adduser varchar(255) DEFAULT NULL )ENGINE=InnoDB DEFAULT CHARSET=utf8;""" #执行sql语句 cursor.execute(sql) #插入数据 try: sql = """insert into users(username,password,realname,sex,phone,utype,addtime,adduser) values('test','123456','summy',0,'156398456741',0,'2020/1/5 08:00:00','admin');""" sql2 = """insert into users(username,password,realname,sex,phone,utype,addtime,adduser) values('test1','123456','summy1',0,'156398456743',0,'2020/1/5 08:00:00','admin');""" cursor.execute(sql) cursor.execute(sql2) #提交到数据库执行 conn.commit() except: #执行失败则回滚 conn.rollback() #查询数据 try: sql = """select * from users;""" #执行sql cursor.execute(sql) #通过fetchall()接收查询到的数据 result=cursor.fetchall() print(result) #获取下一个查询结果集。结果集是一个对象 #result1=cursor.fetchone() #print(result1) #获取查询数据行数 # result3=cursor.rowcount # print(result3) #通过for循环取数据 for row in result: ids = row[0] username = row[1] password = row[2] realname = row[3] sex = row[4] phone = row[5] utype = row[6] addtime = row[7] adduser = row[8] print('username:%s,password:%s,realname:%s,sex:%d,phone:%s,utype:%d,addtime:%s,adduser:%s' %(username,password,realname,sex,phone,utype,addtime,adduser)) except: print('没有查询到数据') #删除数据 try: sql="""delete from users where username ='test1'""" #执行sql语句 cursor.execute(sql) #提交到数据库执行 conn.commit() print('删除成功!') except: #执行失败则回滚数据 print("删除失败!") conn.rollback() #更新数据 try: sql = """update users set username = 'test3' where id = 1;""" #执行sql语句 cursor.execute(sql) #提交到数据库执行 conn.commit() print('更新成功!') except: #执行失败则回滚数据 print("更新失败!") conn.rollback() #关闭数据库连接 conn.close()