Java泛型,比较器和枚举
Java面向对象
Mysql数据库设计
需求设计
概要设计:
抽取实体:业务模型 -> 实体模型(java 类 c++类)内存
class Book{ name, bookNo,author }
数据库设计:
业务模型/实体模型 - > 数据模型 (硬盘)
数据库表设计
详细设计类详细,属性和方法
三大范式
设计原则: 建议设计的表尽量遵守三大范式。
第一范式: 要求表的每个字段必须是不可分割的独立单元1234student : name -- (大名小名在一起)违反第一范式 张小名|狗娃sutdent : name old_name --符合第一范式 张小名 狗娃
第二范式: 在第一范式的基础上,要求每张表只表达一个意思。表的每个字段都和表的主键有依赖。12345employee(员工): 员工编号 员工姓名 部门名称 订单名称 --违反第二范式(订单和编号没有依赖关系)员工表:员工编号 员工姓名 部门名称订单表: 订单编号 订单名称 -- 符合第二范式
第三范式: ...
Lambda表达式,方法引用和异常
Java面向对象
mysql的数据约束
SQL语句的分类:
DDL: 数据定义语言
create / drop / alter
DML:数据操作语句
insert / delete /update / truncate
DQL: 数据查询语言:
select / show
数据约束
对用户操作表的数据进行约束
默认值(default)
作用:当用户对使用默认值的字段不插入值的时候,就使用默认值。
注意:
对默认值字段插入null是可以的。
对默认值字段可以插入非null
123456789101112CREATE TABLE student( id INT, NAME VARCHAR(20), address VARCHAR(20) DEFAULT '广州天河' -- 默认值)当字段没有插入值的时候,mysql自动给该字段分配默认值INSERT INTO student(id,NAME) VALUES(1,'张三');注意:默认值的字段允许为nullINSERT INTO student(id,NA ...
Mysql的基本操作
数据保存到内存:
优点:
读写速度快
缺点:
程序关闭导致数据丢失
数据保存到文件:
优点:
数据可以永久保存
缺点:
频繁地IO操作,效率不高
数据管理不方便。例如查询某个数据需要全部读取出来,再匹配。
数据保存到数据库软件:
优点:
数据永久保存下来
数据管理非常方便。(例如查询非常快速和方便)
数据库管理
查询所有的数据库
showe databases ;
创建数据库
create databases dbtest;
create databases dbtest CHARACTER SET utf8 COLLATE utf8_general_ci;
create database dbtest CHARACTER SET GBK COLLATE gbk_chinese_ci;
修改数据库的字符集
alter database dbtest CHARACTER SET GBK COLLATE gbk_chinese_ci;
alter database dbtest CHARACTER SET utf8 COLLATE utf8_ ...
Mysql数据库的安装
MySQL-mysql 8.0.12安装教程本文章参考小楼札记
下载zip安装包:MySQL8.0 For Windows zip包下载地址:点击下载,进入页面后可以不登录。后点击底部“No thanks, just start my download.”即可开始下载。
安装解压zip包到安装目录我的解压在了C:\develop\mysql-8.0.12-winx64
配置环境变量path将解压文件夹下的bin路径添加到变量值中,前后以 ; 开头结尾
配置初始化的my.ini文件我们发现解压后的目录并没有my.ini文件,没关系可以自行创建。在安装根目录下添加 my.ini(新建文本文件,将文件类型改为.ini),写入基本配置:
123456789101112131415161718192021222324[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=C:\\develop\\mysql-8.0.12-winx64 # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠。自己尝试吧# 设置mysql ...
Java绑定机制,值传递和引用传递
Java面向对象
内部类
Java面向对象
final,深浅拷贝,类的关系,正则和常用类
Java面向对象
Java的单例模式,继承,多态,接口和抽象类
Java面向对象