10 2019 档案
摘要:python 操作mysql 安装pymysql模块 sql注入问题 输入用户名: 输入密码: 不需要输入正确用户名和密码就能查看数据 产生的原因 因为过于相信用户输入的内容,根本没有做任何的检验 解决的方法 用 来检验输入的用户名和密码 连接 连接数据库的参数 cursor=conn.cursor
阅读全文
摘要:建表 班级表 学生表 老师表 课程表 成绩表 数据库语句练习 1. 查询所有大于60分的学生的姓名和学号 (DISTINCT: 去重) 2.查询每个老师教授的课程数量 和 老师信息 3. 查询学生的信息以及学生所在的班级信息 4、学生中男生的个数和女生的个数 5、获取所有学习'生物'的学生的学号和成
阅读全文
摘要:昨日回顾 1.表的操作: 增: 字段类型: 数字: 整型: 区别:取值范围不一样,加上unsigned,代表只能取整数 浮点数: 如果,保存的是工资类型的话,使用decimal 字符串类型: 区别: 1.char(4) 'ab ' 占4个字节,剩余的不足的字节使用空字节来补充
阅读全文
摘要:1. 查看岗位是teacher的员工姓名、年龄 2. 查看岗位是teacher且年龄大于30岁的员工姓名、年龄 3. 查看岗位是teacher且薪资在9000 1000范围内的员工姓名、年龄、薪资 4. 查看岗位描述不为NULL的员工信息 5. 查看岗位是teacher且薪资是10000或9000或
阅读全文
摘要:操作表 增 语法: 列约束: 增加数据: 查询数据: 删 语法 改 语法 例子: 查 语法: 例子: 数据库记录操作 增 语法: 例子: 删 语法: 例子: 查 语法: 例子: 补充: 数据类型 整型 浮点型 字符串 时间类型 枚举
阅读全文
摘要:数据库 什么是数据(Data) 描述事物的符号记录称为数据。 在计算机中描述一个事物,就需要抽取这一事物的典型特征,组成一条记录,相当于文件里的一行内容,如: 单纯的一条记录并没有任何意义,如果我们按逗号分隔,依次定义各个字段的意思,相当于定义表的标题 什么是数据库(DataBase,简称DB) 数
阅读全文
摘要:昨日回顾 GIL全局解释锁 python解释器 1. Cpython(C语言编写) 2. Jpython(Java编写) 3. Ppython(Python编写) GIL全局解释锁 基于CPython来研究全局解释器锁,因为CPython的内存线程不是安全的 1. GIL本质上是一个互斥锁 2. G
阅读全文
摘要:昨日回顾 进程互斥锁 让并发变成串行,牺牲了效率,保证效率安全. 队列 相当于在内存中开启了一个空间,可以存放一堆数据,这堆数据都得遵循‘先进先出’. 管道 (阻塞) + 锁 进程间通信 通过队列让进程间实现通信. 生产者与消费者 生产者:生产数据的 消费者:使用数据的
阅读全文
摘要:写一个基于TCP协议套接字,服务端实现接收客户端的连接并发。
阅读全文
摘要:昨日回顾 操作系统发展史 穿孔卡片 联机批处理 脱机批处理 多道技术: 单道:多个程序一串串执行 多道: 切换+保存状态 空间上的复用 一个计算机(CPU)的空间可以提供给多个程序使用. 时间上的复用 当前程序遇到IO操作,就会立马切换CPU的执行权限 当前程序使用CPU时间过长,就会立
阅读全文
摘要:上节课回顾 1. 粘包问题: 1. 无法确认发送数据的大小。 2. 短时间内发送多次数据量小并且间隔时间短的数据会一次性打包发送。 2. struct 1. 可以将一个很长的数据,压缩成固定的长度,比如4. 3. 解决粘包问题: 1. 通过struct模块弄一个报头。 可以把字典压缩成一个报头,发送
阅读全文
摘要:subprocess模块 1. 可以帮你通过代码执行操作系统的终端命令。 2. 并返回终端执行命令后的结果。 粘包问题 服务端第一次发送的数据,客户端无法精确一次性接收完毕。 下一次发送的数据与上一次数据粘在在一起了。 1. 无法预测对方需要接收的数据大小长度。 2. 多次连续发送数据量小、并且时间
阅读全文
摘要:1.整理TCP三次握手、四次挥手图 三次握手 四次挥手 2.基于TCP开发一款远程CMD程序 客户端连接服务器后,可以向服务器发送命令 服务器收到命令后执行,无论执行是否成功,无论执行几遍,都将执行结果返回给客户端 注意: 执行系统指令使用subprocess模块完成. 服务端 客户端
阅读全文
摘要:软件开发架构 客户端:用户安装的软件; 服务端:统一管理数据库的主机中的软件就叫做服务端,再后来服务端不只是管理数据,外加处理业务逻辑。 c/s架构 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端。 架构要求: 1. 用户操作系统安装
阅读全文
摘要:昨日回顾: 1.组合 一个类产生的对象是另一个对象的属性 组合是为了减少代码的冗余。 2.封装 什么是封装: 特征:属性属性,即类中的变量 技能:方法属性,即类中的函数 把一堆属性(特征与技能)封装一个对象中,对象就好比一个袋子。 封装的目的: 封装的目的是为了可
阅读全文
摘要:1、定义MySQL类 1.对象有id、host、port三个属性 2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3.提供两种实例化方式,方式一:用户传入host和port 方式二:从配置文件中读取host和port进行实例化 4.为对象定制方法,save和get_o
阅读全文
摘要:昨日回顾 1. 继承 新建类的方式,新建的类称之为子类或派生类,继承的类称之为父类,也叫基类或超类 2. 继承的目的 解决代码的冗余问题 3. 寻找继承关系 先抽象,再继承 4. 什么是抽象 抽取类相似的部分 5. 在继承背景下对象属性的查找顺序 从对象 从子类 从父类 6. 派生
阅读全文
摘要:昨日回顾: 1. 面向对象编程: 核心是‘对象’,对象指的是特征与技能的结合体。 基于该编程思想编写程序,就好比在创造世界,一种上帝的思维模式 2. 类 类是一系列对象相同的特征与技能的结合体。 定义类时发生的事情: 1. 会产生一个空的名称空间 2. 会把类内部所有名字扔进名称空间中。 3. 会执
阅读全文
摘要:今日作业 1.什么是对象?什么是类? 对象是特征和技能的结合体,类是一系列对象相同的特征和技能的结合体 2.绑定方法的有什么特点 由对象来调用的函数称之为对象的绑定方法,不同的对象调用该绑定方法,则会将不同的对象传入该绑定方法中。 3.基于面向对象设计一个对战游戏 python 仿制英雄联盟英雄角色
阅读全文
摘要:面向对象基础 1. 什么是面向对象? 指的是一门编程思想 面向过程编程: 核心是‘过程’二字,过程指的是做事情的步骤,即先做什么再做什么 基于该编程思想编写程序,就好比一条工厂流水线,一种机械式的思维方式。 优点: 逻辑清晰,复杂的问题流程化,进而简单化。 缺点: 可扩展
阅读全文