java中的接口是类吗
638
2022-08-25
Python之MySql数据库操作,将二维列表存入数据库以及增、删、改、查。(python操作mysql数据库(增,删,改,查))
MySql数据库操作
首先在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装
Python数据库操作环境配置
离线安装:
pip install 下载的安装包名
在线安装: 输入以下命令
pip install pymysql
出现这样说明安装成功!
数据库操作的基本流程
创建 Connection数据库操作对象
使用Pymysql模块的connect() 方法可生成一个 connection 对象。connect()参数如下: • host: 数据库主机名.默认是用本地主机 • user: 数据库登陆名.默认是当前用户 • passwd: 数据库登陆的密码.默认为空 • db: 要使用的数据库名.没有默认值 • port: MySQL服务使用的TCP端口.默认是3306 • charset: 数据库编码 • local_infile: 是否允许读取本地文件
创建数据库
create database 数据库名
连接数据库
import pymysqlconfig = {'host': 'localhost','port': 3306,'user': 'root','passwd': '密码','db' : '数据库名'}conn = pymysql.connect( ** config)
创建表
SQL语句:
CREATE TABLE 表名(ID INT NOT NULL AUTO_INCREMENT, name VARCHAR(20) NULL, age INT NULL, score INT NULL, PRIMARY KEY (ID));
使用connection 对象,常用方法:cursor():创建游标对象。一个游标允许用户执行数据库命令和得到查询结果 excute(sql[, args]):执行一个数据库查询或命令 callproc(func[,args]):调用一个存储过程 fetchone():得到一行记录 fetchall():得到所有行记录 close():关闭对象,关闭后无法再进行操作,除非再次创建连接。
cursor = conn.cursor()sql = "CREATE TABLE tb_Student(ID INT NOT NULLAUTO_INCREMENT, name VARCHAR(20) NULL, age INT NULL,score INT NULL, PRIMARY KEY (ID))"cursor.execute(sql)conn.close()
将二维列表数据插入数据库
姓名 年龄 成绩杨洋 18 90 张艺兴 19 92 彭昱畅 17 89
(1)将数据用多维列表方式存储在内存中
ls = []ls.append(["杨洋",18,90])ls.append(["张艺兴",19,92])ls.append(["彭昱畅",17,89])
(2)写入数据库、读取数据内容
cursor = conn.cursor()sql = "insert into tb_student(name,age,score) values('{0}',{1},{2})"try: for line in ls: cursor.execute(sql.format(*line)) conn.commit()except: conn.rollback()finally: conn.close()
读取数据库中数据
cursor = conn.cursor()sql = "select * from tb_student"cursor.execute(sql)rows = cursor.fetchall()ls =list(map(list,rows))conn.close()print(ls)
根据条件读取数据库的信息
cursor = conn.cursor()sql = "select name,age,score from tb_student where score<{0}"cursor.execute(sql.format(90))rows = cursor.fetchall()rows = list(map(list,rows))print(rows)
修改数据库的信息
cursor = conn.cursor()sql = "update tb_student set score = 80 where name=%s"try: cursor.execute(sql,["杨洋"]) conn.commit()except: conn.rollback()
删除数据库的信息
cursor = conn.cursor()sql = " delete from tb_student where score<%s "try: cursor.execute(sql,[85]) conn.commit()except: conn.rollback()
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~