数据库管理:

数据库管理:

数据库的概率和相关的语法和规范:

数据库:组织,存储,管理数据的仓库。

数据库的关系系统(DBMS):实现对数据的有效组织,管理和存储的系统软件。

常见的数据库:

mysql

oracle 大数据系统一般使用

sql-server

MariaDB 也是mysql mysqld

postgreSQL 大象数据库

关系型数据库和非关系型数据库。

mysql oracle postgreSQL

关系型数据存储的结构:是一张二维的表格,表里面有行和列

列是对象,字段

行:对象的信息,字段的属性。

行+列组成一张表。

非关系型数据库:

缓存型数据库:redis

索引型数据库:ES

文档型数据库:MongoDB

键值对形式存储的结构

key value

test1=3

关系型数据库和非关系型数据库优缺点:

关系型的优点:表的结构清晰,逻辑容易整理,记录的数据比较完整。

缺点:读写速度比较慢。并发量差,数据迁移比较麻烦。

每个表都是关联的。

非关系数据库优点:支持高并发速写,对海量数据依旧可以保持高效率的存储和访问,架构可扩展。

缺点:键值对形式存储,数据逻辑比较复杂,数据是保存在缓存(内存)当中(redis),如果意外重启所有数据都会丢失。

mysql的数据类型:

char:固定长度的字符串类型,用于存储固定长度的字符串。

char定义好了长度之后,不论你写的值是多少,都会占用固定长度的字节大小。保存在磁盘上都是4字节。

varchar:可变长度的字符类型,存储的是可变长度的字符串。

varchar在保存字符串时,多少就保存多少,在保存的字符串结尾默认有一个隐藏的结束符,会多占一个字节。

varchar比char要节约磁盘空间

读写速度:char的读写速度性能要高于varchar,char是连续的磁盘空间,保存的内容是连续的。

varchar在增删改查之后,会产生一个磁盘空间的碎片文件,影响读写性能。

int 存储的数据类型为整数

float 单精度浮点数,小数点 float(m,d) m表示总位数,d表示小数位数

double 双精度浮点数 double(m,d) m表示总位数,d表示小数位数

date 用于存储日期,YYYY-MM-DD

datetime 用来存储日期和时间,格式YYYY-MM-DD HH:MM:SS

timestamp 和datetime类似,但是他可以自动记录当前时间。

smallint 存储小整数

bigint 存储大整数

decimal(5,2) 存储浮点,存储精度的浮点数,5表示总位数,2表示小位数

数据库的管理:

增上改查----------sql语句

sql中的名词

数据库 database

表 table

行 row

列 column

索引 index

视图 view

用户 user

权限 privilege

存储过程 procedure

存储函数 funcrion

调度器 event

sql的语言规范:

在数据库系统中,sql语句不区分大小写,但是建议大写。

sql语句可以分单行和多行,但是必须要以;结尾

命名规范:库名,表名,列名,必须以字母开头,后面可以跟数字,后面也可以跟上特殊符号。

不要使用mysql的保留字,如table、select、show、databases

数据库名,表名,用户名严格区分大小写。

sql语言的分类:

1、DDL 数据库定义语言:创建数据库的对象语言,库,表和索引等等。

create drop

2、DML 数据库操作语言,对表里面的数据进行管理

select updata insert delete

3、DQL 数据库查询语言,数据库的查询语句

select

4、DCL 数据控制语言,控制和管理数据库用户的角色和权限。

grant revoke

5、tcl 事务控制语句,用来管理数据库的事务 脚本开发,存储过程等等

commit rollback savepoint

一、sql语句:数据库用来增删改查的语句*

DDL:创建库和表的语句:

创建表:

CREATE TABLE `test1` (
  `id` int NOT NULL,
  `NAME` char(10) NOT NULL,
  `score` decimal(5,2) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

 Key | Default | Extra 
-----+---------+-------
     | NULL    |       
     | NULL    |       
     | NULL    |       
-----+---------+-------

key:表示是否是主键或者外键

default:如果没有数据的默认展示结果

extra:提供列的附加信息,自增长等等。

DML和DQL 管理语句和查询语句

DML insert 插入数据

insert into  表名(字段1,字段2,字段3) values(1,2,3);

null和空值之间的区别:

null就是啥也没有,就是为空

空值也是值,只是值是空

修改和更新:
update 表名 set 列名=值 where 条件;
删除表的数据:(delete)
delete from 表名 where 条件;
DQL语句,查询语句:
select 列名,列名 from 表名;
查看指定行:
select * from 表名 limit n,m; #从第n+1行的m行
去重查询
SELECT DISTINCT 去重的列名 from 表名;
where语句:(条件的筛选)
serect * from 表名 where id = 7 and 列名 = 值;
serect * from 表名 where id = 7 or 列名 = 值;

and 且

or 或

模糊查询:
#以顾为开头
select * from 表名 where name like '顾%';
#以什么为结尾
select * from 表名 where name like '%宝';
包含顾这个字符的
select * from 表名 where name like '%顾%';
ALTER 修改表名和修改表结构
#修改表名
alter table 旧表名 rename 新表名;
#给表添加一列
alter table 表名 add 列名 类型(50) default '地址不详';
#修改字段的数据类型:
ALTER TABLE 表名 MODIFY COLUMN address char(30);
#删除列
ALTER TABLE 表名 drop address;
#修改列的名称
alter table 表名 CHANGE address addres VARCHAR(40);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值