摘要:一.场景导入 现在有一张仓库表,仓库表中记录了每一个物品的数量,还有一张用户表,用户购买产品,仓库表的产品数量减少,而用户拥有产品的数量增加。 但是如果仓库中的产品数量不足时怎么处理? 例子: 仓库表:用户表: 创建一个购买的存储过程后: 在表面上似乎没有问题,但是没有考虑到情况当我仓库中数目不足是
阅读全文
摘要:一.什么是触发器? 触发器不是由人来执行操作的,而是在执行某一条MySQL语句时自动触发执行的。 二.触发器的优点和缺点 优点:可以使得数据库中的某些指令得到一致性的协调。 缺点:1.每个表只能定义一种触发器 2.多人合作开发时,很容易搞不清楚那些表有触发器,哪个触发器触发了。 3.和存储过程一样触
阅读全文
摘要:一.认识MySQL 中的变量 在MySQL中变量的绝大部分的用处都是在存储过程和存储函数中。 当然也可以抛开存储过程和存储函数来单独使用。 变量在MySQL中的运用和在编程语言中的运用大体相同 二.MySQL中变量的实际分类 其实可以简单的将MySQL中的变量分为局部变量,全局变量。 上面说了变量其
阅读全文
摘要:一.对待存储过程和函数的态度 在实际项目中应该尽量少用存储过程和函数,理由如下: 1.移植性差,在MySQL中的存储过程移植到sqlsever上就不一定可以用了。 2.调试麻烦,在db中报一个错误和在应用层报一个错误不是一个概念,那将是毁灭性打击,直接一个error:1045什么的更本毫无头绪。 3
阅读全文
摘要:一.MySQL支持哪几种用户定义完整性? .MySQL支持三种用户自定义完整性:非空约束,check约束,触发器约束。 二.非空约束 采用关键字:not null来定义非空约束 例子: 三.check约束 3.1对于列的check约束 语法:在列的定义后面使用check(sql语句) 例子: 接下来
阅读全文
摘要:一.数据完整性的分类 在关系模型中,提供了实体完整性,参照完整性,用户定义完整性。 二.实体完整性 2.1什么是实体? 实体是一个数据对象,指的是客观存在并可以相互区分的事物,比如学生,老师等。一个实体在数据库中对应的是一条记录。 2.2实体完整性在MySQL中实现 实体完整性在MySQL中的实现是
阅读全文
摘要:一.什么是视图? 简单来说,视图就是从一张表中导出的虚拟表。视图拥有表的结构,但是在数据库中只有视图的定义,但是没有视图中的数据。 视图是由查询语句从一张表中导出来的数据,不是一张实际的表。 二.视图的作用 最大的用处就是将程序与表隔离开来,增加了安全性和简单性。 三.创建视图 创建视图是指在已有的
阅读全文
摘要:一.分支结构 语法: if 条件 : .... else : .... 例子: 结果:
阅读全文
摘要:一.Python3中的运算符 强调这是Python3中的运算符 + 加法 - 减法 * 乘法 / 除法 // 整除,只要整数部分 ** 幂运算 % 取余数 == 判断是否相等 != 不等于 < 小于 <= 小于等于 and 和 且 or 或 not 非 x in y 序列y中是否含有x x not
阅读全文
摘要:一.Python中的值交换操作 首先明确一点点,Python中的一切都是面向对象的,可以理解为Python的中一切都是对象。 我们知道Java也是面向对象的语言,但是在Java中定义一个值变量如下: 那么你的这个num1变量并不是一个对象,他只是一个在栈说那个定义的数值,那么我们来看看Python是
阅读全文
摘要:程序实例: 运行的例子: 这个小的程序折射出3个知识点:定义函数,format,eval函数的使用 1.定义函数 从中可以看出Python定义函数时用到了关键字 def 格式如下: def 函数名(): 函数体 可以看出Python在定义函数时没有使用花括号,在c++,Java中定义函数时用到的花括
阅读全文
摘要:一.在建立表时建立索引 在建立表时创建索引的语法: create table 表名( 列名1 列名1属性.... 列名2 列名2属性.... 列名 列名的属性 【UNIQUE(唯一性的约束)|FULLTEXT(全文索引)|SPATIAL(空间索引)】INDEX|KEY 【别名】(属性名 【长度】【A
阅读全文
摘要:一.什么是索引 索引是一种将数据库中单列或者多列的值进行排序的结构,引用索引可以大大提高索引的速度。 二.索引的优缺点 优点:整体上提高查询的速度,提高系统的整体性能。 缺点:创建索引和维护索引都需要消耗大量的时间,消耗的时间和数据量成正比。 三.MySQL的索引分类 1.普通索引 不需要任何权限限
阅读全文
摘要:一.数序函数 1.ABS() 绝对值函数 2.FLOOR() 返回小于或者等于实参的最大整数数 3.CEIL() 返回不小于实参的最小整数 4.RAND()*n 返回0到n的随机数 5.PI() 返回圆周率 6.TRUNCATE(X,Y) 保留X小数点后Y位数截断处理 7.ROUND(X,Y) 保留
阅读全文
摘要:一.基本查询语句 1.1从单个表中查询列 语法:select 查询的列1,查询的列2 from 表名 where 条件 group by 分组条件 order by 排序条件 having 查询满足的第二条件 limit 输出的行数 例子: 1.2从多个表中查询列 使用“.”将表中的列和表分割开来,
阅读全文
摘要:一.插入数据 1.1使用insert...values语句插入 语法:insert [low_priority|delayed|high_priority](优先级问题,ow_priority是指降低insert和delecte以及update的优先级吗,选择delayed是指将插入消息放入到一个缓
阅读全文
摘要:一.MySQL中运算符的分类 算术运算符,比较运算符,逻辑运算符,按位运算符 二.算数运算符 符号 作用 + 加法 - 减法 * 乘法 / 除法 % 取余 DIV(X,Y) 商 MOD(X,Y) 余数 实例:首先创建表: 下面来测试: int加法: 二. 针对daytime类型的计算: 函数1:da
阅读全文
摘要:一.什么叫DML? DML(Data Manipulation Language):数据操作语言。主要操作数据表中的数据,使用DML可以完成以后三件事: 二.具体的语句操作实现 2.1插入语句 语法:insert into 表名(插入项1、插入项2、插入项3) values (值1、值2、值3);
阅读全文
摘要:一.增加表的列 语法:alter table 表名 add( 增加列定义 ); 实例: 二.修改列的类型 语法:alter table 表名 modify 列名 类型; 实例: 三.修改列名 语法:alter table 表名 change 原列名 新列名 新的列类型; 实例: 四.删除列 语法:a
阅读全文
摘要:一.MySQL中的数值类型分类 MySQL中数值类型主要有三类:数字类型,字符串类型,时间类型。 1.数字类型 1.1整数 tinyint 1字节 smallint 2字节 mediumint 3字节 int 4字节 bigint 8字节 1.2浮点数 float 4字节 double 8字节 de
阅读全文
摘要:一.Java中的List集合。 终于有时间来好好整理一下Java中的集合。 首先要讲的就是List集合。Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是链表的LinkedList。 1.List List集合继承Collection集合,就是一个有序列
阅读全文
摘要:1.了解范式(NF) 为了使得关系数据库能够符合规范理论,所有的数据库表都要满足:范式。 关系数据库的范式有五类:第一范式,第二范式,....第五范式。下面我们来了解一下前三个范式: 第一范式:简单来说就是表中不能嵌套表(使用一个列不能有多个值,列是原子级别的不能在分割) 第二范式:(在介绍第二范式
阅读全文
摘要:1.什么是数据模型? 数据模型是数据库系统的核心与基础,是关于数据与数据之间的联系、数据的语义、数据一致性约束的概念性工具的集合。 数据模型的三个组成部分: 数据结构、数据操作、完整性约束。 数据操作:对数据库静态特征的描述,等一下的例子你就会明白。 数据操作:对数据库的动态描述。 完整性约束:是完
阅读全文
摘要:#Python的基本语法: #1.了解缩进 #Python中没有{}来表示一个代码块,但是Python使用缩进来完成区别代码框架 #那么在Python中一个缩进一般等于4个空格,当然你也可以使用TAB键来完成缩进,但是必须保证长度一致即可 #当表达分支、循环、函数、类的时候通过使用冒号(:)来表名进
阅读全文
摘要:1.首先明确一点: 高级语言是不能直接在CPU上运行的。CPU只能处理机器语言,就是黑客帝国里面那个10101010101110的数字流。 那么为了让机器语言能够在CPU上运行,那么就必须将其变成机器语言,那么怎么将高级语言变成机器语言呢? 无非是通过两种方式:编译或者解释。 2.那么编译型和解释型
阅读全文
摘要:首先在码云上创建一个新的项目: 新的项目有一个自带的文件README.md,我们将一个有Git管理的文件夹来将码云上的一远程仓库克隆到本地仓库。 使用git clone git@+项目路径.git的命令符导入项目 导入成功! 查看一下我们的文件夹是否有文件README.md 完成!
阅读全文
摘要:首先在码云上创建一个仓库: 然后使用命令符git remote add origin git@项目地址.git来完成导入 然后使用git push来将当前分支master推送到远程 git push -u origin master 使用 -u将本地的master分支推送到远程的master分支中,
阅读全文
摘要:首先进入由Git管理的文件夹下: 我们直接使用rm命令符删除git1.txt文件 那么你去删除一个版本库里的文件,工作区的文件就和版本库里的不一样了,现在我们采用git status来查看一下状态。 那么你可以将版本库里的文件删掉。 使用git rm 文件名 和命令符 git commit 当然你也
阅读全文
摘要:首先进入一个有Git管理的文件夹下: 当我们在文件编写过程中出现了一个错误怎么办呢?如下: 但是此时你并没有将文件提交缓冲区,你可以去手动打卡文件删除这个错误。 当然你也可以查看一下状态: 发现这个文件没有被提交 那下一步就是使用命令符 git checkout -- 文件名来丢弃当前工作区的文件,
阅读全文
摘要:Git跟踪的是修改而不是文件本身。 看下面一个例子 首先我们修改我们Git管理的git.txt文件 如下: 然后添加: 然后我们再去修改git.txt这个文件 然后直接提交到分支里如图: 也就是说我们的最后一次修改是没有提交进入分支中他只是将暂存区的内容提交到了分支中。 使用命令符git diff
阅读全文
摘要:Git有工作区,暂存区之分。 1.工作区 我们电脑上的某个被Git管理的文件夹,就是一个工作区。 比如说我的GitWorkText文件夹,如图: 2.版本库(Repository) 在工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库 而这个版本库里又有暂存区(stage),还有Git
阅读全文
摘要:首先我们来看看我们的第一个版本: 我的git文件如下: 那我们来修改一下这个文件 然后提交 那我们来查看一下提交的记录:使用git log 当我们使用 git log --pretty=oneline时,他将每一次变动成为一行 你可以看到一大串数字和字母的组合,那个就是文件的版本号 那我们现在退回到
阅读全文
摘要:创建一个文件夹,把这个文件夹用Git管理起来,那么这个文件夹的改变都可以被Git跟踪到,当然也可以将Git中的文件还原到某一个时刻。 首先创建一个空的目录,然后将空的目录由Git来管理 1.建立一个文件夹: 2.在MINGW中进入文件夹 3.将这个文件夹由Git来管理 首先使用命令符pwd来确认当前
阅读全文