IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 数据库基本术语DDL,DML DCL -> 正文阅读

[大数据]数据库基本术语DDL,DML DCL

在这里插入图片描述

DB 数据库(database): 存储数据的“仓库”。它保存了一系列有组织的数据。

DBMS: 数据库管理系统(Database Management System)。数据库是通过DBMS创 建和操作的容器

SQL : 结构化查询语言(Structure Query Language)专门用来与数据库通信的语 言。

注意以下code 是基于mysql 数据操作的。

1、DDL(Data Definition Language):数据定义语句,用于库和 表的创建、修改、删除。

DDL用于定义数据库的结构,比如创建、修改或删除 数据库对象,包括如下SQL语句:

? CREATE DATABASE:创建数据库

#CREATE DATABASE 数据库名;
CREATE DATABASE demo1;

? CREATE TABLE:创建数据库表

CREATE TABLE `beauty` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `sex` char(1) DEFAULT '女',
  `borndate` datetime DEFAULT '1987-01-01 00:00:00',
  `phone` varchar(11) NOT NULL,
  `photo` blob,
  `boyfriend_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;

? ALTER TABLE:更改表结构、添加、删除、修改列长度

#使用了 ALTER 命令及 DROP 子句来删除以上创建表的 photo 字段
ALTER TABLE beauty DROP photo;
#使用 ADD 子句来向数据表中添加列,如下实例在表 beauty 中添加 photo 字段,并定义数据类型:
ALTER TABLE beauty ADD photo blob;
#还有很多使用方法这里就不详述了

? DROP TABLE:删除表

DROP beauty;

? CREATE INDEX:在表上建立索引

#CREATE INDEX indexName ON table_name (column_name)
CREATE INDEX idIndex ON beauty (id);

? DROP INDEX:删除索引

# DROP INDEX [indexName] ON mytable; 
DROP INDEX idIndex ON beauty; 

2、DML(Data Manipulation Language):数据操纵语句,用于添 加、删除、修改、查询数据库记录,并检查数据完整性

DML用于查询与修改数据记录,包括如下SQL语句:

? INSERT:添加数据到数据库中

insert  into `beauty`(`id`,`name`,`sex`,`borndate`,`phone`,`photo`,`boyfriend_id`) 
values 
(1,'柳岩','女','1988-02-03 00:00:00','18209876577',NULL,8),
(3,'Angelababy','女','1989-02-03 00:00:00','18209876567',NULL,3),
(4,'热巴','女','1993-02-03 00:00:00','18209876579',NULL,2),
(5,'周冬雨','女','1992-02-03 00:00:00','18209179577',NULL,9),
(6,'周芷若','女','1988-02-03 00:00:00','18209876577',NULL,1),
(7,'岳灵珊','女','1987-12-30 00:00:00','18219876577',NULL,9),
(8,'小昭','女','1989-02-03 00:00:00','18209876567',NULL,1),
(9,'双儿','女','1993-02-03 00:00:00','18209876579',NULL,9),
(10,'王语嫣','女','1992-02-03 00:00:00','18209179577',NULL,4),
(11,'夏雪','女','1993-02-03 00:00:00','18209876579',NULL,9),
(12,'赵敏','女','1992-02-03 00:00:00','18209179577',NULL,1);

? UPDATE:修改数据库中的数据

UPDATE beauty set name="胡歌",sex="男" where id=1;

? DELETE:删除数据库中的数据

DELETE FROM beauty WHERE id = 3;

? SELECT:选择(查询)数据

SELECT * FROM beauty where id=4;

3、DCL(Data Control Language):数据控制语句,用于定义用 户的访问权限和安全级别。

DCL用来控制数据库的访问,包括如下SQL语句:

? CREATE USER:创建用户

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
flush privileges; # 刷新权限

# 可以在任何电脑上登录 mysql 服务器
CREATE USER 'Tom'@'%' IDENTIFIED BY '123456';
flush privileges;

? GRANT:授予访问权限

# GRANT 权限 1, 权限 2... ON 数据库名.表名 TO '用户名'@'主机名';
# Tom 用户分配对 demo1 这个数据库操作的权限:创建表,修改表,插入记录,更新记录,查询
grant create,alter,insert,update,select on demo1.* to 'Tom'@'%';

# 用户名和主机名要与上面创建的相同,要加单引号。

#给 Tom 用户分配所有权限,对所有数据库的所有表
grant all on *.* to 'Tom'@'%';

? SHOW GRANTS FOR ‘用户名’@‘主机名’;

#SHOW GRANTS FOR '用户名'@'主机名';
SHOW GRANTS FOR 'Tom'@'%';

? DROP USER:删除用户

# DROP USER '用户名'@'主机名';
DROP USER 'Tom'@'%';

? REVOKE:撤销访问权限

# REVOKE 权限 1, 权限 2... ON 数据库.表名 revoke all on test.* from 'user1'@'localhost'; '用户名'@'主机名';

-- 撤销 Tom 用户对 demo1 数据库所有表的操作的权限

revoke all on demo1.* from 'Tom'@'%';

? COMMIT:提交事务处理

? ROLLBACK:事务处理回退

? SAVEPOINT:设置保存点

# 首先开启事务
START TRANSACTION;
# 插入语句
insert  into beauty VALUES (13,'赵敏','女','1992-02-03 00:00:00','18209179577',1,1);
# 设置一个保存点 beautyAddress
SAVEPOINT beautyAddress;
# 提交事务处理 
commit;

# 这里设置的保存的作用是,当我们提交事物出错了后,我们可以根据 保存点回滚事务
# 假设 beautyAddress 保存点提交事物出错就可以执行一下语句
rollback to SAVEPOINT a;

博客参照

MySQL基础:DCL语句 - 不羁的罗恩 - 博客园 (cnblogs.com)

(5条消息) MySQL之DCL(数据控制语言)_嘉禾嘉宁papa的博客-CSDN博客_dcl语言

MySQL 临时表 | 菜鸟教程 (runoob.com)

[(5条消息) MySQL事务保存点_一枚萌新程序员的博客-CSDN博客_mysql设置保存点](

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-16 11:21:36  更:2022-05-16 11:22:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/29 4:29:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码