Mysql数据库

目录

1.数据库

2.数据库分类与常见的数据库

3.SQL

3.1.DDL

数据库操作

表操作

3.2.DML

3.3.DQL

3.4.DCL

管理用户

权限控制

4.Mysql常用的数据类型


1.数据库

数据库:是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。

数据库管理系统(DBMS):操作和管理数据库的大型软件

SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库统一的标准


2.数据库分类与常见的数据库

关系型数据库:建立在关系模型基础上,由多张相互连接的二维表组成的数据库。

二维表示例

常见的类型有:

  • MySQL、OracleSQL ServerSQLiteDB2

非关系型数据库

常见的类型有:

  • Redis、MongoDB

非关系型数据库的特性:
1、使用键值对存储数据;
2、分布式;
3、一般不支持ACID特性;
4、非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。

非关系型数据库的优点:
1、无需经过sql层的解析,读写性能很高;
2、基于键值对,数据没有耦合性,容易扩展;
3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。

非关系型数据库的缺点:
1、不提供sql支持,学习和使用成本较高;
2、无事务处理,附加功能bi和报表等支持也不好;


3.SQL

SQL语句,根据其功能,分为四类:DDL、DML、DQL、DCL。

SQL分类
分类解释命令
DDL(数据定义语言)定义和管理数据对象,如数据库,数据表等CREATE、DROP、ALTER
DML(数据操作语言)用于操作数据库对象中所包含的数据INSERT、UPDATE、DELETE
DQL(数据查询语言)用于查询数据库数据SELECT
DCL(数据控制语言)用来管理数据库的语言,包括管理权限及数据更改GRANT、COMMIT、ROLLBACK

3.1.DDL

        数据定义语言,用来定义数据库对象(数据库、表、z字段)。

数据库操作

  • 创建数据库(判断是否存在)

create database  [ if not exists ] 数据库名;

  • 删除数据库

drop database [ if exists ] 数据库名;

  • 查看所有数据库

show databases;

  • 切换数据库

use 数据库名;

---------------------------------------------------------------------

表操作

  • 创建表

create table[ if not exists ] 表名(

        字段1  字段1类型[ comment   字段1注释 ],

        字段2  字段2类型[ comment   字段2注释 ],

        .......

)[ comment 表注释 ];

  • 查看表

desc 表名;

  • 删除表

drop table 表名;

删除指定表,并重新创建该表:

truncate table 表名;

  • 添加字段

alter table 表名 add 字段名 类型(长度)[ comment 注释 ];

eg:

alter table emp add nickname varchar(20) comment '昵称';

  • 修改字段

修改数据类型
alter table 表名 modify 字段名 新数据类型(长度)

修改字段名和字段类型
alter table 表名 change 旧字段名 新字段名 类型(长度)[comment 注释]

eg:
alter table emp  change nickname username varchar(30) comment '用户名';

  • 删除字段

 alter table 表名 drop 字段名;

  • 修改表名

 alter table 表名 rename to 新表名;

---------------------------------------------------------------------

3.2.DML

  • insert ( 添加数据语句 )
  • update ( 修改数据语句 )
  • delete ( 删除数据语句 )
  • 添加数据

给指定字段添加数据

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

给全部字段添加数据

insert into 表名 values (值1, 值2, ...);

批量添加数据

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

  • 修改数据

update  表名  set  字段名1 = 值1 , 字段名2 = 值2, ...[ where 条件 ];

  • 删除数据

delete from 表名 [ where 条件 ];

---------------------------------------------------------------------

3.3.DQL

  • 查询多个字段

SELECT   [ALL | DISTINCT]

{  * |  table.* | [ table.field1 [ as  alias1] [, table.field2 [as  alias2]][, …]] }

FROM  table_name  [ as  table_ alias  ]

    [ left|out|inner  join  table_name2 ]    #联合查询

  [ WHERE  … ]     #指定结果需满足的条件

  [ GROUP BY …]  #指定结果按照哪几个字段来分组

  [ HAVING …]  #过滤分组的记录必须满足的次要条件

  [ ORDER BY… ]  #指定查询记录按一个或者多个条件排序

  [ LIMIT  {   [ offset,] row_count    |   row_count OFFSET offset   }] ;  #指定查询的记录从哪条至哪条

Mysql-DQL查询语句

---------------------------------------------------------------------

3.4.DCL

        数据控制语言,用来管理数据库用户、控制数据库的访问权限。

管理用户

1.查询用户

select * from mysql.user;

2.创建用户

create user  '用户名'@'主机名'  identified by '密码';

---------------------

主机名可以使用%通配

3.修改用户密码

alter  user   '用户名'@'主机名'  identified  with mysql_native_password by  '新密码' ;

4.删除用户

drop user '用户名'@'主机名' ;

权限控制

1.查询权限

show grants for  '用户名'@'主机名' ;

2.授予权限

grant  权限列表  on 数据库名.表名 to '用户名'@'主机名';

3.撤销权限

revoke  权限列表  on 数据库名.表名 from '用户名'@'主机名';

---------------------------------------------------------------------

4.Mysql常用的数据类型

列类型
规定数据库中该列存放的数据类型

  • 数值类型
  • 字符串类型
  • 日期和时间型数值类型
  • NULL值

数值类型

类型说明存储需求
tinyint非常小的数据1字节
int标准整数4字节
bigint较大的整数8字节
float单精度浮点数4字节
double双精度浮点数8字节
decimal字符串形式的浮点数decimal(m, d) m字节 保留d位小数

字符串类型

类型说明存储需求
varchar可变字符串变长度
text文本2的16次方–1字节

日期和时间型数值类型

类型说明
DATEYYYY-MM-DD
DATETIMEYY-MM-DD hh:mm:ss
TIMESTAMPYYYYMMDDhhmmss格式表示的时间戳

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/6237.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring MVC异常处理【单个控制异常处理器、全局异常处理器、自定义异常处理器】

目录 一、单个控制器异常处理 1.1 控制器方法 1.2 编写出错页面 1.3 测试结果 二、全局异常处理 2.1 一个有异常的控制器类 2.2 全局异常处理器类 2.3 测试结果 三、自定义异常处理器 3.1 自定义异常处理器 3.2 测试结果 往期专栏&文章相关导读 1. Maven系列…

只需3步,使用Stable Diffusion无限生产AI数字人视频

效果演示 先看效果,感兴趣的可以继续读下去。 没有找到可以上传视频的地方,大家打开这个网盘链接观看:https://www.aliyundrive.com/s/CRBm5NL3xAE 基本方法 搞一张照片,搞一段语音,合成照片和语音,同…

SpringBoot+jasypt-spring-boot-starter实现配置文件明文加密

1.使用环境 springboot:2.1.4.RELEASE JDK:8 jasypt-spring-boot-starter:3.0.2 2.引入依赖 !-- 配置文件加密 --> <dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><ver…

uni-app:请求后端数据uni.request

完整代码&#xff1a; onLoad() {uni.request({url: getApp().globalData.position Produce/select_employee,data: {username: getApp().globalData.username,},method: POST,dataType: json,success: res > {this.employee_name res.data.info.employee_name;// consol…

sketch如何在线打开?有没有什么软件可以辅助

Sketch 在线打开的方法有哪些&#xff1f;这个问题和我之前回答过的「Sketch 可以在线编辑吗&#xff1f;」是一样的答案&#xff0c;没有。很遗憾&#xff0c;Sketch 没有在线打开的方法&#xff0c;Sketch 也做不到可以在线编辑。那么&#xff0c;那些广告里出现的设计软件工…

数学建模学习(4):TOPSIS 综合评价模型及编程实战

一、数据总览 需求&#xff1a;我们需要对各个银行进行评价&#xff0c;A-G为银行的各个指标&#xff0c;下面是银行的数据&#xff1a; 二、代码逐行实现 清空代码和变量的指令 clear;clc; 层次分析法 每一行代表一个对象的指标评分 p [8,7,6,8;7,8,8,7];%每一行代表一个…

Docker 基本管理

目录 一、Docker 概述 二、为什么容器越来越受欢迎&#xff1f; 三、Docker 与 虚拟机 的区别 四、 Linux Namespace的6大类型 五、Docker 核心概念 1.镜像 2.容器 3.仓库 六、安装 Docker 1.安装依赖包 2.设置阿里云镜像源&#xff0c;安装Docker 3.查看 docker 版…

PostgreSQL 的事务管理和并发控制机制解析

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

BEVPoolv2 A Cutting-edge Implementation of BEVDet Toward Deployment 论文学习

Github Repo: https://github.com/HuangJunJie2017/BEVDet/tree/dev2.0 Arxiv Paper: https://arxiv.org/abs/2211.17111 1. 解决了什么问题&#xff1f; 多相机 3D 目标检测是自动驾驶领域的基本任务&#xff0c;受到学术界和工业界的大量关注。Lift-Splat-Shoot view trans…

MFC第十九天 记事本项目功能完善和开发、CTabCtrl类与分页模式开发

文章目录 记事本项目功能完善和开发查找界面的记忆功能 、使用F3快捷键自动向下查找功能 的开发单次替换的算法研究 CFileDialog 构造函数详解 应用另存为时选择编码 &#xff08;三种方案&#xff09;vista 样式文件对话框 bVistaStyle 为TRUE时 1pch.hCApp NotePad.cpp 对编码…

视频对比工具(基于python+ffmpeg+airtest实现视频抽帧比较工具)

VideoDiff&#xff1a;基于ffmpeg&#xff0c;实现视频抽帧比较工具 使用场景&#xff1a;在视频渲染模块发生迭代&#xff0c;快速回归测试其产出的视频是否存在问题&#xff0c;从而节省人工回归成本 源码地址&#xff1a;https://github.com/jiangliuer32/VideoDiff 原理图…

centos7中MySQL备份还原策略

目录 一、直接拷贝数据库文件 1.1在shangke主机上停止服务并且打包压缩数据库文件 1.2 在shangke主机上把数据库文件传输到localhost主机上(ip为192.168.33.157) 1.3在localhost主机上停止服务&#xff0c;解压数据库文件 1.4 在localhost主机上开启服务 1.5 测试 二、m…

JVM-Java虚拟机

JVM——Java虚拟机&#xff0c;是Java实现平台无关性的基石。 基本概念&#xff1a;JVM 是可运行 Java 代码的假想计算机 &#xff0c;包括一套字节码指令集、一组寄存器、一个栈、 一个垃圾回收&#xff0c;堆 和 一个存储方法域。JVM 是运行在操作系统之上的&#xff0c;它与…

【Docker】基本概念和底层技术

Docker 1 什么是 Docker Docker 是一种容器技术。只要开发者将其应用和依赖包进行打包&#xff0c;放入到一个轻量级的、可移植的容器中&#xff0c;就能发布到任何流行的 linux 机器上。 Docker 的要素&#xff1a; image 镜像&#xff1a;静态的container 容器&#xff1a…

android studio 新建项目没有R文件

android studio 新建项目没有R文件&#xff0c;处理步骤 1&#xff0c;找一个能打开的项目替换根目录下的settings.gradle 2,改app 目录下的build.gradle文件 3&#xff0c;改gradle版本 4&#xff0c;改AndroidManifest.xml 5&#xff0c;改theme 改为&#xff0c;ok.

【Python】数据分析+数据挖掘——变量列的相关操作

前言 在Python和Pandas中&#xff0c;变量列操作指的是对DataFrame中的列进行操作&#xff0c;包括但不限于选择列、重命名列、添加新列、删除列、修改列数据等操作。这些操作可以帮助我们处理数据、分析数据和进行特征工程等。 变量列的相关操作 概述 下面将会列出一些基本…

Jmeter-使用http proxy代理录制脚本

Jmeter-使用http proxy代理录制脚本 第1步&#xff1a;打卡jmeter工具新增1个线程组 第2步&#xff1a;给线程组添加1个HTTP请求默认值 第3步&#xff1a;设置下HTTP请求默认值第4步&#xff1a;在工作台中新增1个----HTTP代理服务器 第5步&#xff1a;设置HTTP代理服务器…

2023华为OD统一考试(B卷)题库清单(持续收录中)以及考点说明

目录 专栏导读2023 B卷 “新加题”&#xff08;100分值&#xff09;2023Q2 100分2023Q2 200分2023Q1 100分2023Q1 200分2022Q4 100分2022Q4 200分牛客练习题 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;A卷B卷&#xff09;》。 刷的越多&…

卷积神经网络识别人脸项目—使用百度飞桨ai计算

卷积神经网络识别人脸项目的详细过程 整个项目需要的准备文件&#xff1a; 下载链接&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1WEndfi14EhVh-8Vvt62I_w 提取码&#xff1a;7777 链接&#xff1a;https://pan.baidu.com/s/10weqx3r_zbS5gNEq-xGrzg 提取码&#x…

pnpm 与monorepo架构

软链接与硬链接 创建方式&#xff1a; mklink &#xff08;windows&#xff09; 软链接 &#xff1a; a、b指向同一个文件 b相当于一个快捷方式 硬链接&#xff1a; a、b指向同一个内存地址 某一文件修改&#xff0c;其他文件跟这变化 上图所示&#xff1a;安装某依赖&…