数据库基础
《MYSQL 数据库应用技术》章节知识点整理
第一章 数据库的基础知识
几个重要概念:
DB:数据库,按一定的结构结数据进行组织,数据仓库
DBMS:数据库管理系统:
DBS:数据库系统:计算机系统 数据库DBMS 用户
DBA:数据库管理员
数据模型:逻辑
分类:3
层次
网状
关系模型:
关系:一个二维表 行和列
行:一个实体
列:一个属性
RDBMS:关系数据库管理系统
MYSQL:基于关系模型数据库管理系统
常用的关系数据库管理系统:SQL SERVER ORACAL ACCESS
第二章 数据库的基本操作
几种:
连接数据库服务器:mysql -uroot -p
1.创建:create DATABASE 数据库名;
2.查看:show DATABASEs; --
show create DATABASE 数据库名;
3.修改:alter DATABASE 数据库名;
4.选择:USE 数据库名;
5.删除:drop DATABASE 数据库名;
第三章 数据表的基本操作
表:非常重要的一个数据库对象
作用:存放数据的
几种:表名:首字符,字母、汉字,数字,或下划线,不可以包含空格、小数点
1.创建表:create table 表名(列名 列的类型[列属性], );
2.查看表:show tables;
show create table 表名;
DESC 表名
show full COLUMNs from 库名.表名;
3.修改表:
alter table 表名;
A 修改表名
B 修改表选项
C 列名、列的类型 、位置
D 删除字段(列)
E 增加字段(列)
4.删除表 drop table 表名;
二 数据的完整性
-
定义:数据的准确、可靠、一致性
-
分类: 3类
实体的完整性(行):表中的每一行要唯一
域的完整性(列):表中的每一列数据类型、数据范围
参照完整性(引用):两个表之间数据一致
-
实施完整性 通过约束实现
约束:
分类:5
主键:primary key 一个表中只能有一个 列值:非空 唯一 实体的完整性(行)
唯一:unique 一个表中能有多个 列值:可为空 多 不能重复 实体的完整性
非空: not null | null 省略 列值:未知的
默认:default 列 性别 default '男'
外键:FOREIGN key 两个表之间的数据一致
参照完整性(引用)
两个表 主表 子表
学生表 成绩表
学号 学号
主键 外键
列名不同 列名不同
数据类型同 数据类型同
自动编号auto_increment 列值 系统自动生成
默认初始值:1 增量 1
与主键结合 表中行
第四章操作表中数据
操作数据有两种方法:
-
菜单,打开表直接插入、修改或删除数据
-
用SQL语句
**插入数据语句 **
INSERT INTO 表名(列名1,列名2,)values(值1,值2,)
-
列名与值顺序一致,类型要相同
-
字符串、日期时间类型要用单引号引起来
-
符合你的定义的各种约束
insert into students (sno,sname,sex) VALUES ('J1800502','李新','男')
DESC students
#插入所有列的值
insert into students (sno,sname,sex,birthday,phone) VALUES ('J1800503','李新','男','2000-11-3','1891234354')
insert into students (sno,sname,sex,birthday,phone) VALUES ('J1800506','赵明新','男','2000-11-3','1891234351')
update 更新(或修改表)数据语句
格式:
update 表名 set 列名1=值1,列名2=值2,……。
[where 更新条件] #可以省略
1列类型要相同
2字符串、日期时间类型要用单引号引起来
3.符合你的定义的各种约束
例:
update students set sname='林虹' ,sex='女'
where sno='j1800503' #条件要设置合理
delete 删除表中数据语句
格式:
delete from 表名
[where 删除条件] #条件可省 把表中所有的记录删除了
示例:
delete from student where sname='林虹' #删除林虹的记录
delete from student #删除表中所有的记录
TRUNCATE table 表名
作用:把表中所有的记录删除了
等同于无删除条件的 delete from 表名
但该语句效率高
示例:TRUNCATE table student