DCL(数据控制语言)、DTL(事务控制语言)和mysql编程

2024-02-29 00:48

本文主要是介绍DCL(数据控制语言)、DTL(事务控制语言)和mysql编程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DCL

简介:很多时候一个数据库需要多人进行控制和操作,这时就需要使用数据控制语言来创建账户以及分配可使用权限,可见该语言主要涉及2个问题:

  1. 用户管理
  2. 权限分配

mysql中的权限

首先理解什么是权限,简单来说就是可执行的操作,在mysql中主要用某种字段的开或者关来表示是否有某种权限,权限名如:’select’, ‘update’,大约有30个。

主要权限如下:

mysql中的用户

Mysql中可使用数据库的帐户信息在系统数据库mysql中的user表中:

创建用户:

语法:

Create user ‘用户名’@‘允许其登录的ip地址’ identified by ‘密码’;

解释说明:

  1. User信息表示创建的用户的用户名及可以登录数据库的ip地址,‘%’表示任何地址
  2. 用户创建之后,自动在mysql的user表中添加了一条记录,但没有权限

删除用户:

语法:

Drop user ‘用户名’@’允许其登录的地址’

修改用户密码:

修改自己密码:set password = password(‘新密码’);

修改他人密码(在右修改权限条件下):

Set password for ‘用户名’@’允许其登录的地址’ = password(‘新密码’);

权限分配

增加权限:

简单地说就是赋予某个用户对数据库可执行某种操作的权限

语法:

Grant 权限1, 权限2, …… on 数据库名.对象名 to ‘用户名’@‘允许其登录的地址’ identified by ‘密码’;

解释说明:

  1. 权限名:’select’, ‘update’, ‘delete’,等等。其中ALL表示”所有权限”,与all privileges也一样
  2. 对象名:数据库中含有的例如‘表’,‘视图’,‘存储函数’,‘存储过程’等,其中*代表所有
  3. Identified by ‘密码’ 用于给一个用户修改密码,不写也行
  4. 注意该语句同时也有创建该用户并同时分配权限的作用,此时identified by ‘密码’必须写

删除权限:

语法:

Revoke 权限名1,权限名2,…… on 数据库名 . 对象名 from ‘用户名’@‘允许其登录的地址’

事务控制语言

什么是事务

在之间的mysql语句中,我们对mysql的每条操作语句都是操作及执行即结束,那么就可以说这种“一次性执行并结束”的过程称为“一个事务”,即“一条SQL语句即一个事务”。

然而,在很多工作场合,我们需要让“多条SQL语句”看成“一条SQL语句”(表示只有所有的sql语句要么都执行成功要么都执行失败然后结束),工作中的事务就是如此。

事务的作用

举例一个实际应用需求(银行存款):表名cunkuan

id账户名存款
1test11000
2test25000

这篇关于DCL(数据控制语言)、DTL(事务控制语言)和mysql编程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

Go 语言中的 Struct Tag 的用法详解

《Go语言中的StructTag的用法详解》在Go语言中,结构体字段标签(StructTag)是一种用于给字段添加元信息(metadata)的机制,常用于序列化(如JSON、XML)、ORM映... 目录一、结构体标签的基本语法二、json:"token"的具体含义三、常见的标签格式变体四、使用示例五、使用

mysql中的group by高级用法详解

《mysql中的groupby高级用法详解》MySQL中的GROUPBY是数据聚合分析的核心功能,主要用于将结果集按指定列分组,并结合聚合函数进行统计计算,本文给大家介绍mysql中的groupby... 目录一、基本语法与核心功能二、基础用法示例1. 单列分组统计2. 多列组合分组3. 与WHERE结合使

MySQL数据库实现批量表分区完整示例

《MySQL数据库实现批量表分区完整示例》通俗地讲表分区是将一大表,根据条件分割成若干个小表,:本文主要介绍MySQL数据库实现批量表分区的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录一、表分区条件二、常规表和分区表的区别三、表分区的创建四、将既有表转换分区表脚本五、批量转换表为分区

宝塔安装的MySQL无法连接的情况及解决方案

《宝塔安装的MySQL无法连接的情况及解决方案》宝塔面板是一款流行的服务器管理工具,其中集成的MySQL数据库有时会出现连接问题,本文详细介绍两种最常见的MySQL连接错误:“1130-Hostisn... 目录一、错误 1130:Host ‘xxx.xxx.xxx.xxx’ is not allowed

8种快速易用的Python Matplotlib数据可视化方法汇总(附源码)

《8种快速易用的PythonMatplotlib数据可视化方法汇总(附源码)》你是否曾经面对一堆复杂的数据,却不知道如何让它们变得直观易懂?别慌,Python的Matplotlib库是你数据可视化的... 目录引言1. 折线图(Line Plot)——趋势分析2. 柱状图(Bar Chart)——对比分析3

Spring Boot 整合 Redis 实现数据缓存案例详解

《SpringBoot整合Redis实现数据缓存案例详解》Springboot缓存,默认使用的是ConcurrentMap的方式来实现的,然而我们在项目中并不会这么使用,本文介绍SpringB... 目录1.添加 Maven 依赖2.配置Redis属性3.创建 redisCacheManager4.使用Sp

Python Pandas高效处理Excel数据完整指南

《PythonPandas高效处理Excel数据完整指南》在数据驱动的时代,Excel仍是大量企业存储核心数据的工具,Python的Pandas库凭借其向量化计算、内存优化和丰富的数据处理接口,成为... 目录一、环境搭建与数据读取1.1 基础环境配置1.2 数据高效载入技巧二、数据清洗核心战术2.1 缺失

sql语句字段截取方法

《sql语句字段截取方法》在MySQL中,使用SUBSTRING函数可以实现字段截取,下面给大家分享sql语句字段截取方法,感兴趣的朋友一起看看吧... 目录sql语句字段截取sql 截取表中指定字段sql语句字段截取1、在mysql中,使用SUBSTRING函数可以实现字段截取。例如,要截取一个字符串字

SQL Server身份验证模式步骤和示例代码

《SQLServer身份验证模式步骤和示例代码》SQLServer是一个广泛使用的关系数据库管理系统,通常使用两种身份验证模式:Windows身份验证和SQLServer身份验证,本文将详细介绍身份... 目录身份验证方式的概念更改身份验证方式的步骤方法一:使用SQL Server Management S

Spring Boot 事务详解(事务传播行为、事务属性)

《SpringBoot事务详解(事务传播行为、事务属性)》SpringBoot提供了强大的事务管理功能,通过@Transactional注解可以方便地配置事务的传播行为和属性,本文将详细介绍Spr... 目录Spring Boot 事务详解引言声明式事务管理示例编程式事务管理示例事务传播行为1. REQUI