当前位置:网站首页>MySQL数据库基础01
MySQL数据库基础01
2022-08-11 09:42:00 【springxing星】
day01-数据库基础
一、MySQL回顾
MySQL介绍
MySQL是一款Oracle公司出口的轻量级数据库软件,广泛应用于互联网场景,同时也是目前最主流的数据库。
MySQL的优点
MySQL相对于文件系统,优点如下:
1.mysql的结构相对于文件系统更方便管理
2.mysql支持各种编程语言
3.mysql比文件系统支持更大规模的数据
4.mysql更具备扩展性
5.mysql数据能更快检索
6.mysql支持分布式
MySQL的下载与安装
MySQL可视化工具:navicat,sqlyog
SQL分类
DDL:数据库定义语句,用于数据库,表,列的管理,create,drop,alter
DML:数据库表中的CUD,表数据的增删改,insert,update,delete
DQL:表数据的查询:select
DCL:权限控制
TCL:事务控制
CCL:指针控制,指针管理
二、MySQL
软件:mysql是数据库软件
数据库:仓库,是一个数据仓库(数据库管理系统)。通常一个项目对应了一个数据库
数据表:一个数据库中有无数张表,表中存放了数据
列:数据表的表头, 表头由一列列组成
用户管理(DDL)
-- 用户管理 -- SELECT 列名,列名,... from mysql.user; SELECT host,user FROM mysql.user; -- 创建用户 -- host表示允许哪些ip地址能访问 改成%就是所有人都能连接 -- CREATE user '用户名'@'ip地址' IDENTIFIED BY '密码'; CREATE user 'zs' @ 'localhost' IDENTIFIED BY '123'; -- 修改密码 alter user 'zs' @ 'localhost' IDENTIFIED BY '456';
权限操作(DCL)
-- 权限管理
-- 用户授权
-- grant 权限码 on 数据库名.表名 to 用户名@主机名 identified by 'password';
grant all on *.* to 'zs'@'localhost';
-- 查看用户权限
-- show grants for 用户名@主机名;
show grants for 'zs' @ 'localhost';
-- 取消用户权限
-- REVOKE 权限码 ON 库名.表名 FROM 用户名@主机名
REVOKE all on *.* FROM 'zs' @ 'localhost';
-- 刷新权限
FLUSH PRIVILEGES;数据库操作(DDL)
-- 创建数据库 -- create database 数据库名称; -- 直接创建 -- create database if not exists 数据库名称; -- 如果不存在 -- create database if not exists 数据库名称 character set 编码; --创建并指定编码 -- CREATE DATABASE db2; -- CREATE DATABASE IF NOT EXISTS db2; CREATE DATABASE IF NOT EXISTS db2 CHARACTER SET 'utf8'; -- 推荐 -- 查看当前所有数据库 -- show DATABASES; -- 查看数据库定义语句 SHOW CREATE DATABASE db2; -- 修改数据库字符集 -- ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集 ALTER DATABASE db2 DEFAULT CHARACTER SET 'utf8'; -- 使用数据库(一般用于命令行下使用) use db1; select * from tb_user;
数据表的操作
-- 创建数据库
create DATABASE db1 CHARACTER SET 'utf8';
-- 使用数据库
use db1;
-- 创建用户表
-- CREATE TABLE 表名(
-- 字段名 字段类型(长度),
...
-- )ENGINE = INNODB 代表数据库引擎,不同引擎有不同的效果,默认是innodb,innodb是一个支持事务的数据库引擎
--
CREATE TABLE if not EXISTS t_user(
name VARCHAR(255),
sex VARCHAR(255),
age INT(3)
) ENGINE = INNODB DEFAULT CHARSET 'utf8';
-- 快速创建一张表结构一样的表
-- CREATE TABLE 新表名 LIKE 旧表名
CREATE TABLE t_user2 LIKE t_user1;
-- 查看表
-- 1.查看当前数据库下有哪些表
show TABLES;
-- 2.查看表的结构
DESC t_user;
-- 3.查看建表语句
SHOW CREATE TABLE t_user;
-- 删除表
DROP TABLE t_user;
-- 修改表
-- 1.添加列
-- ALTER TABLE 表名 add 列名 类型
ALTER TABLE t_user ADD address VARCHAR(255);
-- 2.修改列类型
-- ALTER TABLE 表名 MODIFY 列名 新的数据类型
ALTER TABLE t_user MODIFY sex char(2);
-- 3.修改列名
-- ALTER TABLE 表名 CHANGE 旧列名 新列名 类型;
ALTER TABLE t_user CHANGE name username VARCHAR(255);
-- 4.删除列
-- ALTER TABLE 表名 DROP 列名
ALTER TABLE t_user DROP address;
-- 5.修改表名
-- RENAME TABLE 表名 to 新表名
RENAME TABLE t_user to t_user1;
-- 6.修改字符集
-- ALTER TABLE 表名 CHARACTER set 字符集;
ALTER TABLE t_user1 CHARACTER set 'utf8';
mysql数据类型
整数:
int(常用)
bigint(常用)
浮点:
float
double(常用)
定点小数:
decimal
日期时间:
datetime(常用)
date(常用)
字符:
char:定长字符串
varchar:变长字符串(常用)
longtext:超大文本
枚举
set
CREATE TABLE test(
d1 int,
d2 bigint,
d3 float(4,3),
d4 double(10,4),
d5 datetime,
d6 date,
d7 char(3),
d8 VARCHAR(255),
d9 LONGTEXT
)ENGINE=INNODB DEFAULT CHARSET 'utf8';表数据的CRUD
-- 向表中添加一行数据
-- insert into 表名(列名,...) values(值1,值2...);
insert into t_user1(username,age,sex) VALUES('张三',20,'男');
-- 批量操作
-- insert into 表名(列名,...) values(值1,值2...),(值1,值2...),(值1,值2...)...;
INSERT INTO t_user1(username,age,sex) VALUES('张三',18,'男'),('张三',18,'男'),('张三',18,'男');
insert into t_user1(username) VALUES('张三');
-- 删除表中数据
-- 删除数据
-- delete from 表名 where 列名=值 and 列名=值 and 列名=值;
DELETE FROM t_user1 WHERE age = 18;
-- 修改表中数据
-- update 表名 set 列名=值 , 列名 = 值...
UPDATE t_user1 set username='李四',sex = '男' WHERE age = 20;
-- 查询表中数据
-- select 列名,... from 表名 where 列名=值;
select username,age,sex from t_user1;
select * from t_user1;边栏推荐
- HStreamDB v0.9 released: Partition model extension, support for integration with external systems
- Software custom development - the advantages of enterprise custom development of app software
- Typescrip编译选项
- 三次握手与四次挥手
- 神经痛分类图片大全,神经病理性疼痛分类
- Design of Cluster Gateway in Game Server
- MATLAB实战Sobel边缘检测(Edge Detection)
- 网络流行简笔画图片大全,关于网络的简笔画图片
- Have you encountered this kind of error? flink-sql writes to clickhouse
- canvas文字绘制(大小、粗体、倾斜、对齐、基线)
猜你喜欢

Lightweight network (1): MobileNet V1, V2, V3 series

Typora and basic Markdown syntax

IPQ4019/IPQ4029 support WiFi6 MiniPCIe Module 2T2R 2×2.4GHz 2x5GHz MT7915 MT7975

软件定制开发——企业定制开发app软件的优势

Simple strokes on the Internet

Unity shader test execution time

新一代开源免费的轻量级 SSH 终端,非常炫酷好用!

The mathematical knowledge required for neural networks, the mathematical foundation of neural networks

Network Models (DeepLab, DeepLabv3)

What should I do if the mysql data query causes the cup to be full because the query time span is too large
随机推荐
Validate the execution flow of the interceptor
qspi 接口与普通四线SPI 接口什么区别?
谁能解答?从mysql的binlog读取数据到kafka,但是数据类型有Insert,updata,
STM32入门开发 LWIP网络协议栈移植(网卡采用DM9000)
MySQL性能调优,必须掌握这一个工具!!!(1分钟系列)
深度神经网络与人脑神经网络哪些区域有一定联系?
Have you encountered this kind of error? flink-sql writes to clickhouse
How to analyze the neural network diagram, draw the neural network structure diagram
HDRP shader to get shadows (Custom Pass)
halcon实例
刷题错题录2-向上取整、三角形条件、字符串拼接匹配、三数排序思路
自定义卷积核的分组转置卷积如何实现?
淘宝/天猫获得淘宝app商品详情原数据 API
HDRP shader 获取阴影(Custom Pass)
STM32之串口传输结构体
Oracle database use problems
unity shader 测试执行时间
Primavera P6 Professional 21.12 Login exception case sharing
Quickly submit a PR (Web) for OpenHarmony in 5 minutes
Birth of the Go language