SQL语言

一、DDL数据库定义语言

1、登录mySQL

mysql        -u"用户名"        -p"密码"        -h"登录地址 

        -h:默认为本机

示例:

2、查看当前存在的数据库

show        databases;

示例: 

 3、创建数据库database

create        database        数据库名称;

创建数据库db01 

示例:

4、删除数据库database

drop        database        数据库名称; 

删除数据库db01 

示例: 

5、使用数据库

在数据库中创建/修改数据表时,需先使用数据库

use        数据库名称

使用数据库db01 

示例:

 

二、DML数据库操作语言

数据表结构

一列为一个字段,一行为一条记录 

 

1、查看当前数据库下存在的数据表

use        数据库名;

show        tables;

示例:

新创建的数据库中未存在数据表

 

2、创建数据表

create        table        数据表名称        (字段01  数据类型  约束,字段02  数据类型  约束...);

在数据库中创建数据表时,需要先使用数据库,但也可以用数据库.数据表的方式调用数据表

在数据库db01下创建数据表tab01 

示例:

 

3、查询数据表结构

desc        数据表名称;

查询数据表tab01的结构 

示例:

 

4、删除数据表

drop        table        数据表名称;

删除数据表tab01 

示例:

 

5、向数据表中插入数据

1、插入一条数据记录

insert        into        数据表名称        values        (数据01,数据02..);

向数据表插入数据记录时,数据记录中的数据需与数据表的字段一一对应,并且数据类型相同

向数据表tab01中插入一条数据记录

示例:

 

2、插入多条数据记录 

也可以一次向数据表中插入多条数据记录,不同数据记录之间用逗号隔开

示例:

 

3、只向数据表的部分字段插入数据

insert        into        数据表名称(字段01,字段02,...)        values        (数据01,数据02,...);

插入的数据也需和字段一一对应

示例:

只向部分字段插入数据时,本条数据记录,其余未插入数据的字段为NULL值 

 

也可以向部分字段一次插入多条数据

示例:

 

6、删除数据表中的数据记录

delet        from        表名        where        字段=数值01;

删除数据表tab01中字段name为张三的数据记录

示例:

 

7、修改数据表的结构

1、向数据表插入一个新字段

在数据表的末尾插入一个新字段

alter        table        表名        add        字段        数据类型        约束;

向表tab01中插入height字段,数据类型为int

示例:

 

在数据表的开头插入一个字段,在末尾加上first即可

示例:

 

2、删除数据表中的一个字段

alter        table        表名        drop        字段;

删除数据表tab01中的height字段

示例:

 

3、修改数据表中某个字段的数据类型

alter        table        表名        modify        字段        数据类型;

修改数据表tab01中的id字段数据类型为varchar

示例:

 

4、修改字段名和字段数据类型

alter        table        表名        change        字段名        新字段名        数据类型;

新数据类型可以和字段原数据类型相同

修改数据表tab01字段id的名字为id_number,数据类型为int

示例:

 

5、alter修改用户密码

alter        user        "用户名"@"登录主机"        identified        by        "新密码";

 或者还可以使用mysqladmin命令修改用户密码

三、DQL数据库查询语言

1、查询数据表中的所有数据记录

select        *        from        数据表名;

查询数据表tab01中的所有数据记录 

示例:

 

2、只查询数据表中部分字段的数据记录

select        字段01,字段02,...        from        数据表名;

查询数据表tab01中的name和age字段的数据记录 

示例:

 

3、将数据记录按照某个字段进行降序排列输出

select        *        from        数据表名         order        by        字段         desc;      

将tab01的数据记录按照age字段进行降序输出 

示例:

 

4、将数据记录按照某个字段进行升序排列输出

select        *        from        数据表名         order        by        字段         asc;   

 将tab01的数据记录按照age字段进行升序输出 

示例:

 条件查询

 

5、查询字段数据在规定的取值范围内的数据记录

select     *     from     数据表名     where     字段     between     数值01     and     数值02;

查询字段age中数据在20--30范围内的数据记录

示例:

 

6、查询满足 字段01数据=数据01 并且 字段02数据=数据02 的数据记录

select    *    from    数据表名    where    字段01=数据01    AND    字段02=数据02;

查询 字段name=张三,并且 字段age=23 的数据记录

示例:

 

7、查询满足 字段01数据=数值01 或者 字段02数据=数据02 的数据记录

select    *    from    数据表名    where    字段01=数据01    OR    字段02=数据02;

查询 字段name=李四 或者 字段age=23 的数据记录

示例:

 

8、查询字段数据在规定的数值中的数据

select    *    from    数据表名    where    字段    in    (数据1,数据2,...);

查询字段age的数值为21,23,24的数据记录

示例:

相比与between   and, in  的数值范围更加精确

 

9、查询字段数据为NULL值的数据记录

select        *        from        数据表名        where        字段        is        NULL;

查询字段mail中数据为NULL值的数据记录

示例:

 

四、DCL数据库控制语言

1、创建用户

create        user        "用户名"@"登录主机"        identified        by        "密码";

创建本地用户user01,密码为MySQL@123

示例:

登录主机可以为本地也可以为其他远程服务器的IP地址

mysql的用户信息存放在数据库mysql的数据表user中,可以使用select查询用户信息

 

2、赋予用户权限

grant       权限(字段01,字段02)       on       数据库.数据表       to       "用户名"@"登录主机";

 权限:

all:所有操作权限
create,创建权限
drop,删除权限
select,查询数据权限
insert,插入数据权限
update,更新数据权限
delete,删除数据权限   等....

数据库.数据表

示例:

*.*,对所有库、表、字段都有操作权限
mysql.*,只对mysql库及库中的表有操作权限
mysql.user,只对mysql库中的user表有操作权限

给用户user01赋予数据库db01中tab01表的所有权限

示例:

show        grants        for        "用户名"@"登录主机"\G;          查看用户的所有权限

3、收回用户的权限

revoke        权限        on        数据库.数据表        from        "用户名"@"登录主机";

收回用户user01对tab01表的所有权限

示例:

 4、删除用户

drop        user        "用户名"@"登录主机";  

删除本地用户user01

示例:

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

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

相关文章

约数与倍数-第12届蓝桥杯选拔赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第45讲。 约数与倍数&#…

非关系型数据库——Redis基本操作

目录 一、Redis数据库常用命令 1.Set——存放数据 2.Get——获取数据 3.Keys——获取符合条件的键值 4.Exists——判断键值是否存在 5.Del——删除指定键值 6.Type——获取键值对应的类型 7.Rename——对已有键值重命名(覆盖) 8.Renamenx——对…

更高效、更简洁的 SQL 语句编写丨DolphinDB 基于宏变量的元编程模式详解

元编程(Metaprogramming)指在程序运行时操作或者创建程序的一种编程技术,简而言之就是使用代码编写代码。通过元编程将原本静态的代码通过动态的脚本生成,使程序员可以创建更加灵活的代码以提升编程效率。 在 DolphinDB 中&#…

【智能算法】随机分形搜索算法(SFS)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献 1.背景 2015年,Salimi等人受到分形的扩散性质启发,提出了随机分形搜索算法(Stochastic Fractal Search ,SFS)。 2.算法原理 2.1算法思想 SFS通…

《QT实用小工具·十一》Echart图表JS交互之仪表盘

1、概述 源码放在文章末尾 该项目为Echart图表JS交互之炫酷的仪表盘,可以用鼠标实时改变仪表盘的读数。 下面为demo演示: 该项目部分代码如下: #include "widget.h" #include "ui_widget.h" #include "qurl.h&q…

鸿蒙实战开发-如何使用Stage模型卡片

介绍 本示例展示了Stage模型卡片提供方的创建与使用。 用到了卡片扩展模块接口,ohos.app.form.FormExtensionAbility 。 卡片信息和状态等相关类型和枚举接口,ohos.app.form.formInfo 。 卡片提供方相关接口的能力接口,ohos.app.form.for…

[VulnHub靶机渗透] pWnOS 2.0

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收…

Android 的网络加载

发起网络请求的过程 当用户在应用程序中输入网址或关键字时,应用程序会发起网络请求。这个过程大致如下: 应用程序将请求发送到服务器,服务器返回响应数据。应用程序接收到响应数据后,将其转换为应用程序可识别的数据格式。应用…

Mybatis--TypeHandler使用手册

TypeHandler使用手册 场景:想保存user时 teacher自动转String ,不想每次保存都要手动去转String;从DB查询出来时,也要自动帮我们转换成Java对象 Teacher Data public class User {private Integer id;private String name;priva…

C++设计模式:策略模式(二)

1、定义与动机 定义一系列算法,把它们一个个封装起来,并且使它们可互相替换(变化),该模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展,子类化) 在软…

web安全学习笔记(6)

记一下第十节课的内容。 一.PHP语言中的if else判断 语法和c语言中非常类似,不再赘述,也可以使用if...elseif...elseif...else 1.True和False 2.,和 一个等号是赋值 两个等号是比较 三个等号是全等(内容相等,数…

OpenHarmony开发-系统烧录

本文详细介绍了烧录OpenHarmony系统到开发板的操作流程。从基础的硬件准备和软件环境设置入手,详细说明了如何配置开发环境、构建系统镜像等过程,详细描述了烧录过程中的关键步骤,以及如何使用专用工具将OpenHarmony系统镜像传输到开发板。同…

第十四届蓝桥杯大赛软件赛省赛

第十四届蓝桥杯大赛软件赛省赛 2.日期统计 小蓝现在有一个长度为 100 的数组,数组中的每个元素的值都在 0 到 9 的范围之内。 数组中的元素从左至右如下所示: 5 6 8 6 9 1 6 1 2 4 9 1 9 8 2 3 6 4 7 7 5 9 5 0 3 8 7 5 8 1 5 8 6 1 8 3 0 3 7 9 2 7 …

PyQt6实战6--高亮

PyQt6实战3--sql查询器-CSDN博客 在sql查询器的基础上添加了sql语法的高亮 运行效果: 代码: 只需要在原来的代码上添加一行 rightTopLayout QVBoxLayout()rightTopLayout.addWidget(QLabel("输入sql:"))self.sql QTextEdit() #加一行高亮&…

【踩坑日记】因不同系统换行符不同导致的文本读取结果不同的问题

文章目录 1 问题现象描述2 解决过程(点击直接跳到解决方法)3 原因解释4 如何避免踩坑4.1 格式转换4.2 格式查看 1 问题现象描述 起因是群友问了这么一个问题 确实很奇怪,按理说第二个printf不会完全不输出,于是想到,…

多线程学习-线程池

目录 1.线程池的作用 2.线程池的实现 3.自定义创建线程池 1.线程池的作用 当我们使用Thread的实现类来创建线程并调用start运行线程时,这个线程只会使用一次并且执行的任务是固定的,等run方法中的代码执行完之后这个线程就会变成垃圾等待被回收掉。如…

7.二叉树的遍历方式及二叉树习题

4.二叉树链式结构的实现 二叉树是: 空树 非空:根节点,根节点的左子树、根节点的右子树组成的。 4.1二叉树的遍历 4.2.1 前序、中序以及后序遍历 前序遍历(Preorder Traversal 亦称先序遍历)——访问根结点的操作发生在遍历其左右子树之前…

161 Linux C++ 通讯架构实战15,线程池代码分析

线程池应该使用的地方 和 epoll 技术结合 线程池代码处理数据的地方。 线程池分析: 线程池代码1 threadpool_create //Tencent8888 start threadpool_create函数的目的初始化线程池,对应的struct是 threadpool_t /* 1.先malloc整个线程池的大小 2.这里…

Memcached 教程之 PHP 连接 Memcached 服务(十)

PHP 连接 Memcached 服务 在前面章节中我们已经介绍了如何安装 Memcached 服务,接下来我们为大家介绍 PHP 如何使用 Memcached 服务。 PHP Memcache 扩展安装 PHP Memcache 扩展包下载地址:PECL :: Package :: memcache,你可以下载最新稳定…

Vuex(vue 项目中实现 频繁、大范围数据共享的技术方案)

参考文档(点击查看) 好处 1.数据的存取一步到位,不需层层传递 2.数据的流动非常清晰 3.存储在Vuex中的数据都是响应式的(数据更新后,使用数据的组件都会自动更新) Vuex基础配置 npm i vuex3.6.2state中用来存储数据&#xff0c…