数据类型
java中的8种基本数据类型也可以在mysql中定义为封装类类型。
varchar : 可变长度字符串类型。用真实的长度来存储数据
char : 固定长度字符串类型.
Date :年月日
datetime: 年月日时分秒
time : 时分秒
timestamp: 时间戳。时间是由dmms在我们在做插入和修改的时候帮我们自动插入。
blob: 大的二进制数据,音频,视频。
text(Clob): 大的文本数据。
SQL语言大概可分为以下几类:
DDL:数据定义语言。
create, drop语句 alter语句.
DML: 数组操作语言.
insert ,update,delete 语句
DQL: 数据查询语言
select语句
DCL: 数据控制语言。
grant, revoke语句。
DTL:事务处理语言。
DDL语言:
对于数据库的操作:
对于表的操作:
如果要删除表,则运行81-82行代码即可
DML语言:
DQL语言(数据查询语言):
带条件的查询
别名
模糊查询
模糊查询:distinct关键字
表达式的查询
聚合查询
在mysql中,定义了5个聚合函数,分别是max(),min(),avg(),sum(),count()
例如查询年龄最大的人
in关键字: 表示在。。。。里面
null查询
排序 默认是升序(asc) ,降序是desc
多表链接查询
- 内联查询:inner join 根据主从表的主外键关系进行查询 条件关键字就是on
- 外联查询:(outer) join
左外链接 left (outer) join : 以左边的表为基准进行查询,左边的表有几条记录,结果就是几条
右外链接 right (outer) join : 以右边的表为基准进行查询,左边的表有几条记录,结果就是几条 - 交叉查询:(实际中药避免)cross join
查询的结果是一种排列组合的结果。
完整性:
-
域完整性: 用来限定字段的取值范围。
手段: 数据类型。 -
实体完整性: 要求每一张表有一个主键。
主键:用来唯一的去区分每条记录的一列或者多列的值。
主键特点: 非空,唯一。
每张表只能有一个主键。
多列充当主键就称为联合主键或者复合主键。
手段: 自增,主键。 -
引用完整性:真对两张表来说的。
需要在子表中创建外键来引用主表中的主键。(外键只能引用主键)
外键所在的表称为子表或从表
主键所在的表称为主表。在添加记录的时候,必须先添加主表的记录,然后再添加子表的记录
修改主表的记录时,不允许修改有外键引用约束的主键。
删除数据的时候,必须先删除子表中的数据,然后删除主表中的数据。手段: 外键约束。
约束的分类:
1. 主键约束: Primary key,
2. 唯一约束: Unique,
3. 非空约束: not null
4. 默认约束: default
5. 外键约束: Foreign key
“Table ‘mysql.servers’ doesn’t exist”:
当你在初次使用Navicat这个工具时,可能会出现如上所示的报错,并且工具无法正确运行,这时你需要自己创建一个表,如下所示:
use mysql;
CREATE TABLE servers
(
Server_name
char(64) NOT NULL,
Host
char(64) NOT NULL,
Db
char(64) NOT NULL,
Username
char(64) NOT NULL,
Password
char(64) NOT NULL,
Port
int(4) DEFAULT NULL,
Socket
char(64) DEFAULT NULL,
Wrapper
char(64) NOT NULL,
Owner
char(64) NOT NULL,
PRIMARY KEY (Server_name
)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
运行此段代码即可
//此模块为搬运,原文链接如下https://blog.csdn.net/kanon_lgt/article/details/5372520