上次了解对象和类方法,今天我们来简单了解一下数据库
1.首先,什么是包? 每一个文件都是包,使用的时候只需要在其他py文件里面引入即可
如何应用一个包?下面就有个简单的例子
首先 创建一个 mypackage.py的文件
# gitup
__all__=['work','study','play','rule'] # 允许外部使用的方法
def work():
print('人人都有工作的权利')
def study():
print('学习使我快乐')
def play():
print('我最大的爱好是coding')
def rule():
print('以上都是假的')
#没有在外部使用这个包,包是本身自己内部在使用
if __name__ =='__main__':
work()
然后创建 myuse.py文件
from mypackage import * #通配符 指的是所有
# import mypackage
work()
study()
play()
rule()
在from里引用 结果
2,简单的数据库
1.1 我们之前学到的有关数据的存放有以下几种
list列表 tuple元祖 dict字典
以上方法其实是属于同一种方式即将数据存储道内存中
在实际开发过程中 数据存储主要有三种形式
# 1,将数据存储到内存中 # 优点:使用方便,读写速度快 缺点,程序关闭的时候,内存会被释放,数据会消失 # 2,将数据写入到文件中 # 优点,数据存储是永久性的,不易丢失 缺点:打开关闭文件,操作数据比较麻烦 # 3,将数据存储到数据库当中 # 优点,数据存储为永久性的,操作方便 缺点,数据库学习难度较大
1.2 数据库按照性质分为两大类
# 1,关系型数据库 : 数据和数据之间存在着广泛的联系 mysql sqlite # 优势 通过一个数据可以访问到其他数据 # 2,非关系型数据库 : 数据和数据之间没有联系 MongDB redis # 优势 数据为单独,数据之间的耦合度比较低,对数据进行增删改不会影响其他数据 #
按照规模 分为四种
# 1,大型数据库:oracle # 2.中型数据库 :SQLserver # 3,小型数据库 : mysql # 4.微型数据库: sqlite 大小大概只有4m左右
而我们平常学习中一般用到的都是sqlite
1.3 数据库操作
创建数据库
import sqlite3
# 连接到一个数据库 如果数据库存在则连接
# 如果数据库不存在 则创建
con = sqlite3.connect('myDB')
设置数据库光标 光标用来执行数据库命令 execute执行
cursor = con.cursor()
cursor.execute('CREATE TABLE if NOT EXISTS my_info(name text ,age int ,des test)')
con.commit()
# 一个项目里面可能用到多个数据库(一般情况下绝大部分自由一个) # 一个数据库里面有多张表 # 一个表里面有多个数据 # 一个字段里面有多条数据
数据库增加
cursor.execute('INSERT INTO my_info(name,age,des)VALUES ("萨斯给",18,"马大路")')
con.commit()
数据库删除
# cursor.execute('DELETE FROM my_info WHERE age >40')
# con.commit()
cursor.execute('DELETE FROM my_info WHERE age>40 and name = "德莱厄斯"')
con.commit()
cursor.execute('DELETE FROM my_info WHERE age >29 and name = "德莱厄斯"')
con.commit()
及删除表中数据
# cursor.execute('DELETE FROM my_info')
# con.commit()
删除整个表
cursor.execute('DROP TABLE IF EXISTS my_info')
con.commit()
修改数据
# cursor.execute('UPDATE my_info set name = "影分身" where name = "那罗多"')
# con.commit()
#
#
# cursor.execute('UPDATE my_info set name = "迪迦",age = 200 where name = "萨斯给"')
# con.commit()
查询数据
# cursor.execute('SELECT * FROM my_info WHERE name = "迪迦"')
# result = cursor.fetchone() #fetch 抓取 获取
cursor.execute('SELECT name FROM my_info WHERE age>0')
result = cursor.fetchall()
# result = cursor.fetchmany(3)
print(result)
附上上述所创数据库
以上内用皆为今日所学 今天又又又又又又是元气满满的一天!明天继续加油!!!!!