zoukankan      html  css  js  c++  java
  • 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()
    

      

      

  • 相关阅读:
    FMDB(一)— 简单介绍
    产品设计之设计理念
    整理了一下浅墨大神的Visual C++/DirectX 9.0c的游戏开发手记
    使用scp免passwordserver间传递文件
    游戏架构其一:经常使用工具集合
    Failed to import package with error: Couldn't decompress package
    【从0開始Tornado建站】0.9版本号python站点代码开源--持续更新中
    【Android】 给我一个Path,还你一个酷炫动画
    codeforces Round #Pi (div.2) 567ABCD
    linux 查看磁盘使用情况
  • 原文地址:https://www.cnblogs.com/muzii/p/13080671.html
Copyright © 2011-2022 走看看