摘要: 单表查询 表的基本查询语句 单表查询的前期准备 ​create table emp( id int not null unique auto_increment, name varchar(20) not null, sex enum('male','female') not null defaul 阅读全文
posted @ 2019-08-21 21:51 不在一城 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 前言 提出问题 解决方案 ​​如何确认表与表之间的关系: “换位思考”,必须两方都考虑周全之后才能得出结论​ 举例:员工表和部门表之间的关系​: ​先站在员工表看是否可以: ​​多个员工对应一个部门 ​​翻译过来:一个部门是否能有多个员工​ ​​可以(所以暂时确认了员工反向多对一部门) 再站在部门表 阅读全文
posted @ 2019-08-20 16:56 不在一城 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 前言(创建表的完整语法) 补充: 总结(约束和类型的区别): 数据类型 整型 类型存储范围 验证整型字段有无符号及范围(unsigned取消范围限制) create table t1(x tinyint); insert into t1 values(128),(-129); ​select * f 阅读全文
posted @ 2019-08-19 21:43 不在一城 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 去幕布 >> 数据库 DBMS(数据库管理系统) 关系型数据库 数据与数据之间可以有关联和限制的​ 关系型数据库通常都是表结构,也就意味着你在用关系型数据库的时候 ​ 第一步就是确定表结构 字段有特定的类型 存名字用字符串 存密码用数字 存生日用日期 ​ ​库 >>> 文件夹 表 >>> 文件 记录 阅读全文
posted @ 2019-08-16 16:48 不在一城 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 去幕布 >> 1、进程池和线程池 通过concurrent.futures实现进程/线程池 # 代码演示(进程/线程池)+(异步回调) ​from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor import time 阅读全文
posted @ 2019-08-15 16:23 不在一城 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 去幕布 >> GIL全局解释器锁 Python的多线程没法利用多核优势,是不是就没有用了? 研究Python的多线程是否有用,需要分情况讨论: (假设有四个任务,每个任务需要10s 处理完成)​ 1. 计算密集型​: 单核情况下​: ​开线程更省资源(原因是开进程需要申请内存空间等操作,浪费时间) 阅读全文
posted @ 2019-08-14 16:03 不在一城 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 去幕布 >> 进程之间通信IPC机制 队列:先进先出(队列=管道+锁)full、get_nowait、empty 都不适用于多进程的情况 队列 的方法演示 from multiprocessing import Queue ​ q = Queue(3) # 括号内可以传参数 表示的是这个队列的最大存 阅读全文
posted @ 2019-08-12 17:00 不在一城 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 去幕布 >> 操作系统发展史 发展史1. 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。2. 20世纪50年代后期,出现人机矛盾:手工操作的慢速度和计算机的高速度之间形成了尖锐矛盾,手工操作方式已严重损害了系统资源的利用率(使资源利用率 阅读全文
posted @ 2019-08-09 20:20 不在一城 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 去幕布>>> socketserver模块 如何理解socketsever使用封装好的模块,直接调用其中的方法,来完成socket模块可以实现的方法 如何使用 import socketserver class MyServer(socketserver.BaseResetHandler)​​: d 阅读全文
posted @ 2019-08-08 16:52 不在一城 阅读(640) 评论(0) 推荐(1) 编辑
摘要: 本地回环地址127.0.0.1 只能自己识别自己,其他人无法访问 TCP特点将数据量较小的并且时间间隔比较短的数据,一次性打包发给对方 一个简单的CS架构 # server端口 ​ import socket # 导入socket模块 server = socket.socket() # 生成一个对 阅读全文
posted @ 2019-08-07 21:15 不在一城 阅读(124) 评论(0) 推荐(0) 编辑