数据库简介及安装,ddl语句

数据库

数据库的作用

存储大量数据,方便检索和访问
保持数据信息的一致、完整
共享和安全
通过组合分析,产生新的有用信息

数据库的分类

按照数据(多个数据是否存在联系)关系进行划分

①关系型数据库

用于存储存在一定关联的数据库,存储形式类似于表,存储的数据拥有统一的类型与名称

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z2dpgq3q-1607339034499)(img\image-20201110100413609.png)]

②非关系型数据库

存储数据以一定形式进行存储,数据与数据之间没有关联关系,类似于map

MongDB

Redis

数据存储的方式

数据库就是“数据”的“仓库”
数据库中包含表、关系以及操作对象
数据存放在表中

所有数据存储在相应的表中,所有表存储在相应的库中

在实际开发过程中,我们会将当前应用所有使用的数据存储在一个库中(每个库负责一个应用)

在库中对所有数据进行分类使用不同的表进行数据的存储,在进行使用时选择库表之后可以快速的进行数据的获取

数据库使用的概念

不同的关系型数据库其实本质上的区别,就是存储数据的方式(使用自己的存储方式为数据进行存储指定文件),并且使用自己提供的管理软件进行数据库数据的管理

数据库管理员-》操作数据库管理软件-》使用数据库管理系统-》进行数据操作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nrKKmX8Q-1607339034501)(img\image-20201110103939897.png)]

Mysql

Mysql安装

1、使用cmd验证mysql是否已经安装

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eBrSHp2x-1607339034503)(img\image-20201110104337017.png)]

2、打开安装程序

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XoF17hU4-1607339034506)(img\image-20201110104432160.png)]

3、勾选协议点击next

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l9Uio4DC-1607339034507)(img\image-20201110104613860.png)]

4、选择自定义安装指定安装路径

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ri5HVt3A-1607339034509)(img\image-20201110104823509.png)]

5、选择安装数据库与管理软件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8E1a7Bp2-1607339034510)(img\image-20201110104917517.png)]

6、选择进行配置安装

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PnKzYAHM-1607339034511)(img\image-20201110105117764.png)]

7、选择安装数据库用途

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dA1b6x9I-1607339034512)(img\image-20201110105211899.png)]

8、选择是否生成默认库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vhzcs2Bk-1607339034516)(img\image-20201110105403081.png)]

9、选择数据存储位置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pp9O9RbN-1607339034517)(img\image-20201110105625186.png)]

10、选择数据库同时连接数上限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-chAwLoiv-1607339034518)(img\image-20201110105715376.png)]

11、记录mysql使用端口号并将端口加入防火墙校验

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RcVoXxtg-1607339034518)(img\image-20201110105903833.png)]

验证是否安装成功并进行连接

mysql -h连接主机ip -u账号 -p密码

Mysql 的删除

(1)使用安装文件删除

1、关闭mysql服务

cmd命令输入service.msc打开服务管理,关闭mysql服务

2、正常情况下可以使用安装文件进行删除

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-K3HcA6ws-1607339034519)(img\image-20201110114455683.png)]

如果没有提前关闭服务那么需要手动停止服务使用sc delete 服务名进行手动删除

3、删除mysql环境变量中path设置的环境变量

(2)正常删除

1、关闭mysql服务

cmd命令输入service.msc打开服务管理,停止mysql服务

2、打开控制面板找到mysql卸载

如果卸载前忘记关闭服务,那么卸载后关闭服务之后手动卸载

3、删除mysql文件

4、如果想彻底删除mysql,打开注册表搜索mysql删除所有与mysql相关的注册表信息(建议百度指定删除)

sql简单指令

mysql -h服务器地址 -u账号 -p密码 数据库连接指令

show databases; 展示当前所有数据库

use 数据库名; 连接使用指定数据库

show tables; 展示当前连接数据库中所有的表

SQL

Structured Query Language:结构化查询语言

是各大数据库厂商为了进行数据库数据的管理而达成的统一

不区分大小写,所有语句以;结束

sql语句分类

DDL(数据定义语言)
用来建立数据库、数据库对象和定义表的列

DML(数据操作语言)
插入、删除和修改数据库中的数据

DQL(数据查询语言)
用来查询数据库中的数据

DCL(数据控制语言)
用来控制存取许可、存取权限等

DDL

数据库定义语言,用于建库建表以及进行库表操作

基本语法

创建数据库

create database 数据库名;

以默认编码创建指定数据库

**[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YRaU9Cp0-1607339034521)(img\image-20201110143011564.png)]**

查看所有数据库

show databases;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DaQhvRFA-1607339034522)(img\image-20201110143036664.png)]

查看指定数据库建库语句

show create database 数据库名;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GMmyGGNp-1607339034524)(img\image-20201110143100581.png)]

删除数据库

drop database 数据库名;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mOvftszV-1607339034524)(img\image-20201110143117286.png)]

存储数据类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kEszYYOQ-1607339034525)(img\image-20201110144405492.png)]

在实际开发过程中对于数值类型使用int 、double进行存储,字符串使用varchar进行存储,日期根据实际需求进行存储一般使用datatime与timestamp

建表语句

create table 表名(

列名 类数据类型(长度) 约束1 约束2,

列名 类数据类型(长度) 约束1 约束2

)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t4bzQZnw-1607339034527)(img\image-20201110150715363.png)]

查看表详情

desc 表名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fO6BWJnJ-1607339034528)(F:\teacher\笔记\img\image-20201110150752783.png)]

修改表名

rename table 表名 to 新表名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nm0W8cBM-1607339034529)(img\image-20201110151211182.png)]

为表新增列

alter table 表名 add(列名 数据类型(长度) 约束,列名 数据类型(长度) 约束 )

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jsNWSC7m-1607339034531)(F:\teacher\笔记\img\image-20201110151647855.png)]

修改已有字段数据类型等属性

alter table 表名 modify 修改字段名 修改后的数据类型(修改后的长度) 修改后的约束, 修改字段名 修改后的数据类型(修改后的长度) 修改后的约束

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FxOUTCiQ-1607339034532)(img\image-20201110152505701.png)]

修改已有字段名称

alter table 表名 change 修改字段名 修改后的名称 修改后的数据类型(修改后的长度) 修改后的约束

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b32S67tA-1607339034533)(F:\teacher\笔记\img\image-20201110152659098.png)]

删除已有字段

alter table 表名 drop 删除字段名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Vii9L9L-1607339034534)(F:\teacher\笔记\img\image-20201110152928096.png)]

删除表

drop table 表名

**主键约束primary key **

primary key 设置字段非空不允许重复

删除主键约束
alter table 表名 drop primary key;
添加主键约束
alter table 表名 add primary key(添加约束列);
修改主键约束
alter table 表名 modify id int primary key;

最少性
尽量选择单个键作为主键
稳定性
尽量选择数值更新少的列作为主键

唯一约束unique

数据添加不允许重复

添加唯一约束
alter table 表名 add unique (添加约束列);
修改唯一约束
alter table 表名 modify 修改约束列 varchar(25) unique;
删除约束
alter table 表名 drop index 修改约束列;

非空约束 not null

not null 指定字段不允许进行null存储

增加非空约束
alter table 表名modify 约束字段 varchar(2) not null;

取消非空约束
alter table 表名 modify 约束字段varchar(2) null;

取消非空约束,增加默认值
alter table 表名 modify 约束字段varchar(2) ;

默认值约束default

当添加数据数没有添加数据使用默认值进行添加

alter table 表名 modify 约束字段varchar(2) default 默认值;

自增约束auto_increment

设置自增ID
CREATE TABLE empautoinc(
ID INT PRIMARY KEY AUTO_INCREMENT
) AUTO_INCREMENT = 100 ; --(设置自增ID从100开始)

修改mysql表的字段为自增长
alter table newcar change id id int(11) not null AUTO_INCREMENT;
获取自动增长
select @@IDENTITY;
删除自增
Alter table tb change id id int(10);//删除自增长

外键约束 foreign key

将副表字段与主表关联,可以设置当主表字段进行修改时的操作,用于限制副表数据的添加只能依赖于主表已有数据,主表进行数据删除时需要保证副表没有使用主表的数据,一般由于限制,在开发中一般使用伪外键关联(不设置外键关联,单进行数据添加时使用主表数据)

– 主表
create table temp(
id int primary key,
name varchar(20)
);
– 副表
create table temp2(
id int,
name varchar(20),
classes_id int,
foreign key(id) references temp(id)
);

删除外键约束
alter table student drop foreign key student_id;
增加外键约束
alter table student add foreign key( classes_number) references classes(number);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值