二.数据库

时间:2022-02-25 06:55:16

1.数据库(Database)

是按照数据结构来组织、存储和管理数据的仓库,每一个数据库都有一个或多个不同的API用于构建,访问,管理搜索和复制所保持的数据

2.DBMS术语:

   1.数据库:是一些关联表的集合

   2.数据表:表是数据的矩阵,在一个数据库中的表看起来像一个简单的电子表格

   3.列:一列(数据元素)包含了相同的数据,例如邮政编码的数据

   4.行:一行(二元组或记录 )是一组相关的数据,例如一条用户订阅的 数据 

   5.冗余:存储两倍数据,冗余可以是系统更快

   6.全键:全键是唯一的,一个数据表中指包含一个主键,你可以使用主键来查询数据

   7.外键:用于关联两个表

   8.复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引

   9.索引:使用索引可快速访问数据列表中的特定信息,索引是对数据库表中一列或多列的值进行排序的一种结构,类似于书籍的目录

   10.参照完整性:参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性

3.Mysql数据库

Mysql是最流行的关系型数据库管理系统, 在WEB应用方面Mysql是最好的应用软件之一

Mysql是一种关联型数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内
4.操作命令

一.数据库操作命令

1.show dabatases; #查看都有什么数据库,所有数据库列表

2.use mysql; #进入某个数据库

3.create database ylz; #创建一个叫ylz的数据库,只支持英文

4.create database ylz charset gbk; #创建一个支持gbk的数据库

5.create database if not exists ylz;#不确认ylz是否存在,不报错创建,会有一条warning信息(用show warning; 打开错误信息)

5.show create database ylz; #显示ylz基本信息,包括编码方式

6.create database if not exists ylz character set gbk;创建一个gbk编码的ylz(第二种创建)

7.alter database ylz character set gbk; #修改数据库ylz编码方式

8. use ylz; #进入某个数据库,也可以相互切换

9. select database();  #查询在哪个数据库

二.表的操作命令

数据类型大致可以分为三类:数值,日期/时间和字符串(字符)类型

主键 :非空且唯一 :not null  ,unique

1.创建一个表,并设计其中要输入内容的主题(id),以及后面跟的名称和数据类型(TINYINT), PRIMARY KEY(主键唯一且不为空),自动生成id(auto_increment), default 18(默认值)

 

CREATE TABLE employee(
id TINYINT PRIMARY KEY auto_increment,
name VARCHAR(25),
gender boolean,age INT ,
department VARCHAR(20),
salary DOUBLE(7,2)
);
相当于 id name gender department salary
(自动生成) (等待插入内容)

 

 

2.查询表

SHOW TABLES; #查看某个数据库中的所有表

DESC employee; #查看employee表结构和参数

SHOW CREATE TABLE employee; #查看表创建的语法内容

3.添加字段(add)

   ALTER TABLE employee ADD is_married tinyint(1); #添加字段,名称 数据类型

   ALTER TABLE employee ADD entry_date date not null; #添加字段,名称 数据类型 约束条件不为空

   ALTER TABLE employee ADD a int,ADD b varchar(20); #添加多个字段,用逗号分开

4.删除字段(drop)

 ALTER TABLE employee DROP a; #删除字段

5.修改字段(modify)

ALTER TABLE employee MODIFY age smallint not null default 18 after id; #修改age字段,smallint,not null , default 18(默认值),after id(把它放在id后面)