MySQL数据库sql语句操作

一、数据库模型

关系型数据库是一种以表格形式组织和存储数据的数据库。它使用关系模型,其中数据被组织为多个表格,每个表格包含了多个行和列。每个表格的列描述了数据的属性,而行包含了实际的数据记录。

非关系型数据库,也称为NoSQL数据库,采用不同的数据组织和存储方式。与关系型数据库不同,非关系型数据库通常不使用表格结构,而是使用其他数据模型,如键值对、文档、列族或图形。

二、SQL语句分类

1.DDL - 数据库操作

1)查询
show databases;     查询所有数据库
select database();  查询当前数据库
2)创建
create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则];
3)删除
drop database [if exist] 数据库名;
4)使用
use 数据库名;

2.DDL - 表操作

1)查询
show tables;                查询当前数据库所有表
desc 表名;                   查询表结构
show create table 表名;      查询指定表的建表语句
2)创建

3)修改
alter table 表名 add 字段名 类型(长度) [comment 注释] [约束];  添加字段
alter table 表名 modify 字段名 新数据类型(长度);    修改数据类型
alter table 表名 change 旧字段名 新字段名 类型(长度) [comment 注释] [约束]; 修改字段名和字段类型
alter table 表名 drop 字段名;    删除字段
alter table 表名 rename to 新表名;   修改表名
4)删除
dorp table [if exists] 表名;      删除表名
truncate table 表名;      删除指定表,并重新创建该表

3.DDL - MySQL数据类型(常见)

  1. 整数类型:

    • TINYINT: 用于存储小范围整数值,例如性别(0代表男,1代表女)。

    • INT: 最常用的整数类型,适用于存储一般整数数据。

    • BIGINT: 用于存储较大范围的整数,比如用户ID。

  2. 浮点型和定点数类型:

    • FLOAT: 适用于存储较小的浮点数,例如存储商品价格。

    • DOUBLE: 用于存储双精度浮点数,适用于更大或更精确的浮点数。

  3. 字符串类型:

    • CHAR: 适用于存储固定长度的字符数据,例如存储国家代码。

    • VARCHAR: 用于存储可变长度的字符数据,比如存储用户名或地址。

    • TEXT: 适用于存储较长的文本数据,如文章内容或备注信息。

  4. 日期和时间类型:

    • DATE: 用于存储日期数据,例如订单日期。

    • TIME: 存储时间数据,比如存储用户登录时间。

    • DATETIME: 用于存储日期和时间的组合,例如存储创建时间。

    • TIMESTAMP: 可以用于自动记录行的创建或修改时间。

4.DML - 添加数据(INSERT=insert),修改数据(UPDATE=update),删除数据(DELETE=delete)

1.添加数据(INSERT=insert)
# 插入字段与值是一一对应的
insert into 表名 (字段名1,字段名2,...) values(值1,值2,...);   给指定字段添加数据
insert into 表名 values(值1,值2,...);   给全部字段添加数据
​
批量添加数据
insert inio 表名 (字段名1,字段名2,...) values(值1,值2,...),(值1,值2,...);   
insert into 表名 values(值1,值2,...),(值1,值2,...);
2.修改数据(UPDATE=update)
(条件可有可无,无:则修改整张表数据)
update 表名 set 字段1=值1,字段2=值2,...[where 条件];
3.删除数据(DELETE=delete)
(条件可有可无,无:则删除整张表数据  delete语句不能删除某个字段值,可以使用update)
delete from 表名 [where 条件];

5.DQL - 查询数据(SELECT=select)

6.DCL

1.管理用户

2.权限控制

三、小结

1.DDL

-数据库操作
show databases;                 查询当前所有数据库
create database 数据库名;         创建数据库
use 数据库名;                     使用该数据库
select database();               查询当前数据库
drop database 数据库名;            删除数据库
​
-表操作
show tables;                                     查询当前数据库所有表
create table 表名(字段 字段类型,字段 字段类型...);    创建表
desc 表名;                                        查询表结构
show create table 表名;                           查询指定表的创表结构
alter table 表名 add/modify/change/drop/rename to ...;    修改表
drop table 表名;                                          删除表

2.DML

添加数据(INSERT=insert),修改数据(UPDATE=update),删除数据(DELETE=delete)
-添加数据
insert into 表名 (字段1,字段2,...) values(值1,值2,...),(值1,值2,...), ... ;
​
-修改数据
update 表名 set 字段1=值1 , 字段2=值2 [where 条件];
​
-删除数据
delete from 表名 [where 条件];

3.DQL

查询数据(SELECT=select)

4.DCL

-用户管理
# 创建一个新的数据库用户,并指定用户名、主机名和密码。
create user '用户名'@'主机名' identified by '密码';
# 修改用户的认证方式为mysql_native_password,并更新密码。
alter user '用户名'@'主机名' identified with mysql_native_password by '密码';
# 删除指定的数据库用户。
drop user '用户名'@'主机名';
​
-权限管理
# 授予用户对指定数据库或表的权限。权限列表可以是多个权限的组合,例如SELECT、INSERT、UPDATE等。
grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';
# 从用户中撤销对指定数据库或表的权限。
revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

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

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

相关文章

使用命令行创建vue3项目等待时间长解决方案

问题描述 今天在使用命令行创建vue3项目的时候,发现命令行窗口卡了很久,明明已经更换了安装包的源,并且检查环境变量配置正确的情况下,为什么还要等待那么久呢? 解决方案 使用命令再次检查更换淘宝的源是否配置成功…

玩转系统|利用HestiaCP自建NS解析及邮局并利用MailGun进行发信

前述 HestiaCP是一个VestaCP分叉来的产物,而同样作为VestaCP分叉来的myVesta也具有类似的功能。VestaCP本身作为一个社区的产区,其仅仅有一个商业插件需要每月付费5USD进行使用,因此为了达到完全开放使用的目的,这里选择使用Hest…

Linux uuto命令教程:如何传送文件到远端的UUCP主机(附案例详解和注意事项)

Linux uuto命令介绍 Linux uuto命令是一个脚本文件,它实际上会执行uucp命令,用来将文件传送到远端的UUCP主机。在完成工作后,它会以邮件的形式通知远端主机上的用户。 Linux uuto命令适用的Linux版本 uuto命令在大多数Linux发行版中都可以…

小电流MOSFET 选型分析数据,可应用于电子烟,电动工具,智能穿戴等产品上

小电流双N,D-N通道MOSFET,电压60V-100V左右 电流300mA-500MA,采用封装形式多样。具有低导通电阻,可快速切换速度,易于设计的驱动电路也易于并联,ESD保护,低电压驱动使该器件非常适合便携式设备…

通俗易懂的案例+代码解释AOP 切面编程

目录 1. 理解AOP2 Before2.1 controller层2.2 service层2.3 自定义注解2.4 切面 advice 3 After4 Around spring的三大核心:IOC控制反转、DI依赖注入、AOP面向切面编程 刚开始接触springboot项目,前两个使用的多,亲自使用AOP的机会并不多&…

【学习笔记】python仅拷贝list的值,引出浅拷贝与深拷贝

一、python 仅拷贝list的值(来源于gpt) 在 Python 中,可以使用切片或 copy() 方法来仅拷贝列表的值。 1、使用切片 a [1, 2, 3, 4, 5] b a[:] # 通过切片来拷贝 a 的值 在上面的代码中,我们使用切片来拷贝列表 a 的值&#xff…

长城之上的无人机:文化遗产的守护者

长城之上的无人机:文化遗产的守护者 在八达岭长城景区,两架无人机分别部署在了长城的南、北楼两点。根据当前的保护焦点和需求,制定了5条无人机综合巡查航线,以确保长城景区的所有开放区域都能得到有效监管。每天,无人…

一个简单循环队列的实现

一个简单循环队列的实现 在线验证链接:https://onlinegdb.com/gpGlm4BV0 /******************************************************************************* Brief A simple circle fifo* Data 23/12/07* Author zxk* File name z_fifo.c *********************…

【LeetCode】2703. 返回传递的参数的长度

返回传递的参数的长度 题目题解 题目 请你编写一个函数 argumentsLength,返回传递给该函数的参数数量。 示例 1: 输入:args [5] 输出:1 解释: argumentsLength(5); // 1只传递了一个值给函数,因此它应返…

zabbix、netdata和glances,做最简单的系统资源监控

软件需要显示服务器的资源信息(CPU、内存、网络、硬盘等),但是软件是在Docker容器中运行。 目前方案 通过ssh在主机上远程运行ps、free等指令,获取相应的信息。这种方案需要代码配置主机的IP,以及用户名和密码&#…

干爆ChatGPT,谷歌发布新大模型:Gemini

我是卢松松,点点上面的头像,欢迎关注我哦! 谷歌昨天又发布了一个新的大模型,叫Gemini(双子座时代)。打开Google AI 就能看到。 据说非常强,然后是一大堆夸奖,大概是本月中旬的时候正式推出。标题明晃晃写…

gcc安全特性之变量初始化检查

GCC的变量初始化检查特性旨在减少未初始化变量对程序行为和安全性的潜在影响。本文简要介绍该特性原理和使用方法。 1. 功能 变量初始化检查特性通过在编译过程中静态分析源代码来检测未初始化的变量,并在发现未初始化变量时发出警告。这有助于开发人员在编译时发…

Java UDP 多人聊天室简易版

服务端 import java.io.*; import java.net.*; import java.util.ArrayList; public class Server{public static ServerSocket server_socket;public static ArrayList<Socket> socketListnew ArrayList<Socket>(); public static void main(String []args){try{…

GO设计模式——13、享元模式(结构型)

目录 享元模式&#xff08;Flyweight Pattern&#xff09; 享元模式的核心角色&#xff1a; 优缺点 使用场景 注意事项 代码实现 享元模式&#xff08;Flyweight Pattern&#xff09; 享元模式&#xff08;Flyweight Pattern&#xff09;它通过共享对象来减少内存使用和提…

Rask AI引领革新,推出多扬声器口型同步技术,打造本地化内容新纪元

“ Rask AI是一个先进的AI驱动视频和音频本地化工具&#xff0c;旨在帮助内容创作者和公司快速、高效地将他们的视频转换成60多种语言。通过不断创新和改进产品功能&#xff0c;Rask AI正塑造着未来媒体产业的发展趋势。 ” 在多语种内容创作的新时代&#xff0c;Rask AI不断突…

Day53力扣打卡

打卡记录 重新规划路线&#xff08;dfs&#xff09; 链接 class Solution:def dfs(self, x: int, parent: int, e: List[List[List[int]]]) -> int:res 0for edge in e[x]:if edge[0] parent:continueres edge[1] self.dfs(edge[0], x, e)return resdef minReorder(se…

基于AWS Serverless的Glue服务进行ETL(提取、转换和加载)数据分析(三)——serverless数据分析

3 serverless数据分析 大纲 3 serverless数据分析3.1 创建Lambda3.2 创建API Gateway3.3 结果3.4 总结 3.1 创建Lambda 在Lambda中&#xff0c;我们将使用python3作为代码语言。 步骤图例1、入口2、创建&#xff08;我们选择使用python3.7&#xff09;3、IAM权限&#xff08;…

TDengine统计数据库占用空间

TDengine 目前只提供统计超级表占用空间的工具&#xff1a; 2.x 版本使用 select _block_dist() from STABLE_NAME3.x 版本使用 show table distributed STABLE_NAME 但以上的统计结果并不准确。 如果想统计 DB 使用的空间&#xff0c;只能通过统计所属 vnode 占用空间进行统…

PHP代码检查网站是否能正常打开,检查ssl证书

检查公司网站能否正常打开和检查SSL证书是否过期的重要性不容忽视。公司网站众多, 人工一个个去检查太费时费力, 所以用定时任务跑代码去检查; 1 检查公司网站能否正常打开 对于一个企业来说&#xff0c;网站是其在线形象和客户联系企业的主要途径。如果网站无法正常打开&…

第二十一章——网络通信总结

网络程序设计基础 局域网与互联网 为了实现两台计算机的通信&#xff0c;必须用一个网络线路连接两台计算机。如下图所示 网络协议 1.IP协议 IP是Internet Protocol的简称&#xff0c;是一种网络协议。Internet 网络采用的协议是TCP/IP协议&#xff0c;其全称是Transmission…