MySQL数据库基础

MySQL数据库基础

1.数据库 - 数据的仓库
数据持久化(长久保存数据)
管理数据(完整性、一致性、权限)
2.关系(型)数据库 —> 1970s
理论基础:关系代数 —> 关系运算 —> 集合运算 / 关系运算 / (一阶)谓词逻辑
交集、并集、差集、笛卡尔积、子集、超集、存在
投影、选择、别名、连接、(排)除、与、或、非
all / any / exists
具体表象:用二维表(行和列)保存数据
行:记录 —> 元组(tuple)
列:字段 —> 属性(attribute)
编程语言:SQL(Structured Query Language) —> 结构化查询语言
DDL:数据定义语言 —> create / drop / alter
DML:数据操作语言 —> insert / delete / update
DQL:数据查询语言 —> select
DCL:数据控制语言 —> grant / revoke
3.关系型数据库产品
Oracle —> Oracle
Oracle —> MySQL —> MariaDB
IBM —> DB2
Microsoft —> SQLServer
PostgreSQL / SQLite 嵌入式关系型数据库

​ 数据库服务器操作系统 Linux / Unix

4.MySQL命令行工具

显示所有数据库:show databases;

创建数据库:create database `数据库名字` default charset utf8mb4;(数据库名字加反引号``可以将关键字作为数据库名字)

删除数据库:drop database if exists 数据库名字;

修改数据库:alter database 数据库名字 default character set utf8mb4;

切换数据库:use 数据库名字;

显示数据库:show tables;

创建二维表:

create table tb_student

(

stu_id int not null comment ‘学号’,

stu_name varchar(20) not null comment ‘姓名’,

stu_gender boolean not null default 1 comment ‘性别’,

stu_birth date comment ‘出生年月’,

primary key (stu_id)

) engine=innodb comment ‘学生表’;

删除二维表:drop table if exists tb_student;

修改二维表:

​ ~ 添加列:

​ alter table tb_student add column stu_addr varchar(200) default ‘’;

​ ~ 删除列:

​ alter table tb_student drop column stu_addr;

​ ~ 修改列:

​ alter table tb_student modify column stu_gender char(1) default ‘男’;

​ alter table tb_student change column stu_gender stu_sex char(1) not null default ‘男’;
添加约束条件:

​ --唯一性约束

​ alter table tb_student add constraint uk_student_tel unique (stu_tel);

​ --检查约束

​ alter table tb_student add constraint ck_student_birth check (stu_birth>=‘1990-1-1’);

删除约束条件:

​ alter table tb_student drop constraint uk_student_tel;

5.MySQL的数据类型

​ ~ 查看数据类型帮助:? data types;

​ ~ 整数:int / integer (一个符号位,31位数字)—> bifint / smallint(x) / tinyint(x) —> unsigned

​ int -->-2**31 ~ 2**31-1

​ int unsigned -->0~ 2**32-1(无符号位)

​ bigint -->-2**63 ~ 2**63-1

​ bigint unsingend -->0 ~ 2**64

​ ~ 小数:float(x) / double(x) —> decimal(推荐使用)(6,2)

​ ~ 日期和时间:date / time / datetime —>timestamp(x)

​ ~ 字符串:varchar / char(x)

​ ~ 二进制数据(x):blob --> binary large object–>longblob

​ ~ JSON(新加的,尽力掌握):json

6.图形化(GUI)的客户端工具

​ ~ MySQL Workbench

​ ~ Navicat

​ ~ SQLyog -->CE/EE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值