MySQL的sql语言分类DML、DQL、DDL、DCL

news/2025/2/11 9:07:24/文章来源:https://www.cnblogs.com/ywk2002/p/18709095

SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL

1. 数据定义语言DDL(Data Definition Language)

  对象: 数据库和表

  关键词: create alter drop truncate(删除当前表再新建一个一模一样的表结构)

  创建数据库:create database school;

  删除数据库:drop database school;

  切换数据库:use school;

  创建表:create table student(

      id int(4) primary key auto_increment,

      name varchar(20),

      score int(3)

    );

  查看数据库里存在的表:show tables;

  注意:

    varchar类型的长度是可变的,创建表时指定了最大长度,定义时,其最大值可以取0-65535之间的任意值,但记录在这个范围内,使用多少分配多少,

varchar类型实际占用空间为字符串的实际长度加1。这样,可有效节约系统空间。varchar是mysql的特有的数据类型。

    char类型的长度是固定的,在创建表时就指定了,其长度可以是0-255之间的任意值。虽然char占用的空间比较大,但它的处理速度快。

  修改表:alter table student rename (to) teacher;

      alter table student add password varchar(20);

      alter table student change password pwd varchar(20);

      alter table student modify pwd int;

      alter table student drop pwd;

  删除表:drop table student;

  查看生成表的sql语句:show create table student;

  查看表结构:desc student;

2. 数据操纵语言DML(Data Manipulation Language)

  对象:纪录(行)

  关键词:insert update delete

  插入:insert into student values(01,'tonbby',99); (插入所有的字段)

     insert into student(id,name) values(01,'tonbby'); (插入指定的字段)

  更新:update student set name = 'tonbby',score = '99' where id = 01;

  删除:delete from tonbby where id = 01;

  注意:

     开发中很少使用delete,删除有物理删除和逻辑删除,其中逻辑删除可以通过给表添加一个字段(isDel),若值为1,代表删除;若值为0,代表没有删除。

     此时,对数据的删除操作就变成了update操作了。

  truncate和delete的区别:

    truncate是删除表,再重新创建这个表。属于DDL,delete是一条一条删除表中的数据,属于DML。

3. 数据查询语言DQL(Data Query Language)

  select ... from student where 条件 group by 分组字段 having 条件 order by 排序字段

  执行顺序:from->where->group by->having->order by->select

  注意:group by 通常和聚合函数(avg(),count()...)一起使用 ,经常先使用group by关键字进行分组,然后再进行集合运算。

     group by与having 一起使用,可以限制输出的结果,只有满足条件表达式的结果才会显示。

  having和where的区别:

    两者起作用的地方不一样,where作用于表或视图,是表和视图的查询条件。having作用于分组后的记录,用于选择满足条件的组。

4. 数据控制语言DCL(Data Control Language)

  数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视,用户,权限,事务等。

  grant:授权,rollback:回滚。commit:提交。

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

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

相关文章

0帧起手将腾讯混元大模型集成到Spring AI的全过程解析

在前面,我们已经为大家铺垫了大量的知识点,并深入解析了Spring AI项目的相关内容。今天,我们将正式进入实战环节,从零开始,小雨将带领大家一步步完成将第三方大模型集成到Spring AI中的全过程。为了方便讲解,本次实战的示范将以腾讯的混元大模型为主,我们将逐步向你展示…

【5大误区】选择跨网文件安全交换系统的注意事项

网络隔离后,企业采用跨网文件安全交换系统可以显著提升工作效率、保障信息安全、满足合规要求、支持灵活工作模式以及增强市场竞争力。这些优势使得跨网文件交换系统成为现代企业不可或缺的工具。 一、选择跨网文件安全交换系统的常见误区 选择跨网文件安全交换系统时,企业和…

C# 深度学习:对抗生成网络(GAN)训练头像生成模型

通过生成对抗网络(GAN)训练和生成头像 目录通过生成对抗网络(GAN)训练和生成头像说明简介什么是 GAN什么是 DCGAN参数说明数据集处理权重初始化生成器判别器损失函数和优化器训练 说明 https://torch.whuanle.cn 电子书仓库:https://github.com/whuanle/cs_pytorch Maomi.Torc…

开源的 DeepSeek-R1「GitHub 热点速览」

春节假期回来,一睁眼全是王炸级的开源模型 DeepSeek-R1!GitHub 地址→github.com/deepseek-ai/DeepSeek-R1DeepSeek-R1 开源还不到一个月,Star 数就飙升至冲破天际的 70k。虽然目前仅开源了模型权重,但同时发布的技术论文详细地介绍了 DeepSeek-R1 所采用的训练技术,如模型…

C#/.NET/.NET Core优秀项目和框架2025年1月简报

前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的详细介绍、功能特点、使用方式以及部分功能截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附…

Palo Alto Cortex XSOAR 6.13 for Linux - 安全编排、自动化和响应 (SOAR) 平台

Palo Alto Cortex XSOAR 6.13 for Linux - 安全编排、自动化和响应 (SOAR) 平台Palo Alto Cortex XSOAR 6.13 for Linux - 安全编排、自动化和响应 (SOAR) 平台 Security Orchestration, Automation and Response (SOAR) platform 请访问原文链接:https://sysin.org/blog/cort…

2025年01月总结及随笔之年前撞车

2025年01月总结及随笔之年前撞车1. 回头看 日更坚持了762天。读《数据保护:工作负载的可恢复性》更新完成 读《量子霸权》开更并更新完成 读《算法简史:从美索不达米亚到人工智能时代》开更并持续更新2023年至2025年01月底累计码字1936092字,累计日均码字2540字。 2025年01月…

[网络] 跨域问题及解决方案

同源策略及跨域问题 同源策略是一套浏览器安全机制,当一个源的文档和脚本,与另一个源的资源进行通信时,同源策略就会对这个通信做出不同程度的限制。 简单来说,同源策略对 同源资源 放行,对 异源资源 限制 因此限制造成的开发问题,称之为跨域(异源)问题 同源和异源 源(…

macos安装三方windows

mac需时intel芯 m芯片貌似不支持windows系统,甚至虚拟机的方式都支持不友好 准备好鼠标 因为在windows安装界面或第一次打开的系统时,此时时没有注入驱动的,macbook笔记本自带的键盘触摸板将都不可用! 格式必须是iso 如果你下载到的三方windows系统是esd 或者其他格式,则必…

[大模型/AI/GPT] Chatbox:大模型可视化终端应用

序 概述:Chatbox AIChatbox AI 是一款 AI 客户端应用和智能助手,支持众多先进的 AI 模型和 API,可在 Windows、MacOS、Android、iOS、Linux 和网页版上使用。User-friendly Desktop Client App for AI Models/LLMs (GPT, Claude, Gemini, Ollama...)https://github.com/Bin-…

【AI安全】大模型越狱探索

本文皆在探讨大模型越狱攻击手法,能实操落地非学术化的,所有案例用于技术分享交流,在后文中尽量会用最精简的语言来讲解 开篇点题:越狱追溯于早期 IOS,用户为了突破设备的封闭生态系统,自由操作自己的IOS,不被限制,而在大模型中,越狱同理,规避大模型的限制,执行那些…

【洛谷P1229】遍历问题

这道题好巧 遍历问题 题目描述 我们都很熟悉二叉树的前序、中序、后序遍历,在数据结构中常提出这样的问题:已知一棵二叉树的前序和中序遍历,求它的后序遍历,相应的,已知一棵二叉树的后序遍历和中序遍历序列你也能求出它的前序遍历。然而给定一棵二叉树的前序和后序遍历,你…