随笔分类 - python就业班-05-MySql
摘要:安装 操作 封装:将数据库操作的代码封装到一个类中,helper 用户的登录注册成功 hashlib sha1() update() hexdigest() 作业
阅读全文
摘要:1.流程图 2.加密 注意:需要对密码进行加密 如果使用md5加密,则密码包含32个字符 如果使用sha1加密,则密码包含40个字符,推荐使用这种方式 3.创建表 加入测试数据 插入如下数据,用户名为abc,密码为123,这是sha1加密后的值 4.程序 1)版本1:框架 2)版本2:判断用户名错误
阅读全文
摘要:1.版本1:初始化 2.版本2:打开关闭方法 3.版本3:增加修改删除 4.版本4:抛出异常,参数化 5.版本5:查询 6.版本6:获取单条数据 7.版本7:封装完成 8 当做第三方模块导入
阅读全文
摘要:1.创建外键 2. python2安装引入模块 在文件中引入模块 3.交互类型 (1)Connection对象 用于建立与数据库的连接 创建对象:调用connect()方法 参数host:连接的mysql主机,如果本机是'localhost' 参数port:连接的mysql主机的端口,默认是3306
阅读全文
摘要:1.事务 当一个业务逻辑需要多个sql完成时,如果其中某条sql语句出错,则希望整个操作都退回 使用事务可以完成退回的功能,保证业务逻辑的正确性 事务四大特性(简称ACID) 原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行 一致性(Consisten
阅读全文
摘要:1.如何判断关系 2.自关联 问题:能不能将两个表合成一张表呢? 思考:观察两张表发现,citys表比provinces表多一个列proid,其它列的类型都是一样的 意义:存储的都是地区信息,而且每种信息的数据量有限,没必要增加一个新表,或者将来还要存储区、乡镇信息,都增加新表的开销太大 答案:定义
阅读全文
摘要:1.关系 创建成绩表scores,结构如下 id 学生 科目 成绩 思考:学生列应该存什么信息呢? 答:学生列的数据不是在这里新建的,而应该从学生表引用过来,关系也是一条数据;根据范式要求应该存储学生的编号,而不是学生的姓名等其它信息 同理,科目表也是关系列,引用科目表中的数据 id 学生 科目 成
阅读全文
摘要:1.聚合 为了快速得到统计数据,提供了5个聚合函数, 只能得到聚合结果,没有原始数据 count(*)表示计算总行数,括号中写星与列名,结果是相同的 max(列)表示求此列的最大值 + +| max(id) |+ +| 6 |+ + min(列)表示求此列的最小值 + +| min(id) |+ +
阅读全文
摘要:1.查询的基本语法 from关键字后面写表名,表示数据来源于是这张表 select后面写表中的列名,如果是*表示在结果中显示表中所有列 在select后面的列名部分,可以使用as为列起别名,这个别名出现在结果集中 如果要查询多个列,之间使用逗号分隔 2.消除重复行 在select后面列前使用dist
阅读全文
摘要:1 远程连接mysql 安装 管理服务 允许远程连接 2.添加表 3.逻辑删除 对于重要数据,并不希望物理删除,一旦删除,数据无法找回 一般对于重要数据,会设置一个isDelete的列,类型为bit,表示逻辑删除 大于大量增长的非重要数据,可以进行物理删除 数据的重要性,要根据实际开发决定 4.命令
阅读全文
摘要:1.数据库简介 当前使用的数据库,主要分为两类 文档型,如sqlite,就是一个文件,通过对文件的复制完成数据库的复制 服务型,如mysql、postgre,数据存储在一个物理文件中,但是需要使用终端以tcp/ip协议连接,进行数据库的读写操作 2.E-R模型 当前物理的数据库都是按照E-R模型进行
阅读全文
摘要:Window版本 1、下载 http://dev.mysql.com/downloads/mysql/ 2、解压 如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:D:\mysql-5.7.16-winx64 3、初始化 MySQL解压后的 bin 目录下有一大堆的可执行
阅读全文