当前位置:   article > 正文

python 数据库操作_cursor.execute("update

cursor.execute("update

 

实际开发过程当中,数据的存储过程主要有三种:

1.将数据存储到内存当中

优点:使用方便,读写速度快  缺点:程序关闭的时候 内存释放 数据消失  

2.将数据写到文件当中

 优点:数据存储是永久性的,不易丢失 缺点:打开关闭文件 操作数据比较麻烦

3.将数据存储到数据库当中

优点:数据存储是永久性的,操作也比较方便 缺点:数据库学习难度比较大

 数据库按照性质分为两大类:

 1.关系型数据库,数据和数据之间存在这广泛的联系 mysql sqlite

 优势:通过一个数据可以访问到其他的数据

 2.非关系型数据库,数据和数据之间没有关系 MongoDB redis

 优势:数据为单独的,数据之间的耦合度比较低,对数据进行增删改不会影响其他数据

 按照数据库规模大小来分 有四种:

 1.大型数据库:oracle 一般用于大型商业公司 例如淘宝京东

 2.中型数据库:SQLserver 使用非常广泛的数据库

3.小型数据库:mysql 一般用于小的产品公司或者公司内部数据库

4.微型数据库:sqlite 大小大概只有4M左右 经常用于移动端

python中用得是sqlite

一、连接和创建数据库:

1.引入sqlite3

  1. # 引入sqlite3
  2. import sqlite3

2.创建数据库和创建表:

语法:cursor.execute() 执行

create table if not exists 表名 (字段名 类型,字段名 类型,...)

  1. # 连接到一个数据库 如果数据库存在则连接
  2. # 如果不存在则创建
  3. con = sqlite3.connect('myDb')
  4. # # 设置数据库光标 光标是用来执行数据库命令的
  5. cursor = con.cursor()
  6. # execute执行 如果mtTable表不存在创建 mtTable表 (字段名)
  7. cursor.execute('CREATE TABLE IF NOT EXISTS mtTable (name text,sex text,age int,height int)')
  8. # commit提交
  9. con.commit()

 创建完成之后 文件下会有个这样的图标

找到 View按照下图方式点击database 可在编译器右边出现一个数据库的控制窗口,将创建的数据库拖进去即可查看数据库的信息

二、数据库的操作:增删改查

1. 增:要注意添加的内容要与数据库的字段名相对应,一次只能增加一条数据

  1. cursor.execute('INSERT INTO mtTable (name,sex,age,height) VALUES ("jerry","男",20,150)')
  2. # commit提交
  3. con.commit()

2.删:删除name='jerry'的数据

  1. cursor.execute('DELETE FROM mtTable WHERE name = "jerry"')
  2. con.commit()

3.改:set 设置要改成什么, where后面是条件

  1. cursor.execute('UPDATE mtTable SET name="jerry" WHERE name="tom"')
  2. con.commit()

4.查:select * from 表名 where 条件

  1. cursor.execute('SELECT * FROM mtTable')
  2. # fetchall 找到所有的结果 返回值是个列表
  3. result = cursor.fetchall()
  4. # fetchone 找到结果的第一个结果 返回值是一个元组
  5. result = cursor.fetchone()
  6. # fetchmany 找到指定数量的结果
  7. result = cursor.fetchmany(1)
  8. print(result)

5.数据库模糊查询:

  1. import sqlite3
  2. con = sqlite3.connect('nameDB')
  3. cursor = con.cursor()
  4. cursor.execute('CREATE TABLE IF NOT EXISTS name_table(name text)')
  5. con.commit()
  6. cursor.execute('INSERT INTO name_table(name) VALUES ("王花")')
  7. con.commit()
  8. # cursor.execute('INSERT INTO name_table(name) VALUES ("张三")')
  9. # con.commit()

X_表示找到以X开头的,后面只有一位的数据

_X表示找到以X结尾的,前面只有一位的数据

 _ _多少位 就表示找到有几位数据

  1. cursor.execute('SELECT * FROM name_table WHERE name LIKE "张_"')
  2. 结果为:
  3. >>张三

%X 表示找到所有以X结束的数据

 X% 表示找到所有以X开始的数据

%X% 表示找到所有包含 X 的数据

  1. # cursor.execute('SELECT * FROM name_table WHERE name LIKE "王%"')
  2. print(cursor.fetchall())
  3. 结果为:
  4. >>['王花']
  5. cursor.execute('SELECT * FROM name_table WHERE name LIKE "%花%"')
  6. print(cursor.fetchall())
  7. 结果为:
  8. >>['王花]'

 

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号