数据库深入浅出,数据库介绍,SQL介绍,DDL、DML、DQL、TCL介绍

news2024/9/21 13:23:06

一、基础知识:

1.数据库基础知识

        数据(Data):文本信息(字母、数字、符号等)、音频、视频、图片等;

        数据库(DataBase):存储数据的仓库,本质文件,以文件的形式将数据保存到电脑磁盘中

        数据库管理系统(DBMS):管理、操作、维护数据库的软件

        数据库应用程序(DBAS):DataBase Application System操作数据库管理系统,使用数据

        数据库管理员(DBA):DataBase Administrator负责数据库的维护和运营。

2.数据库分类:

        关系型数据库:MySql、Oracle、DB2、SQL server

        非关系型数据库:Redis、MongoDB、MemCache、HBase

2.1关系型数据库

        将复杂的数据,以二维表(存储关系:行、列)来展示,由二维表之间的联系组成数据组

        单表操作、多表操作;

        优点:易于维护(二维表结构格式一致)、使用方(通用SQL)、复杂操作(单表多表联合)

        缺点:操作磁盘文件(读写性能差)、固定的表结构(灵活度降低)、处理高并发读写较差

2.2非关系型数据库(NoSQL)

        非关系型数据库NoSQL(Not Only SQL)数据库,数据结构化存储方法的集合,可以是文档、键值对等。

二、MySql基础知识

        MySQL 是一个关系型数据库管理系统, 由瑞典 MySQL AB 公司开发, 目前属于 Oracle 公司。MySQL从最初的1.0、3.1到后来的8.0,发生了各种各样的变化。被Oracle收购后,MySQL的版本演化出了多个分支,除了需要付费的MySQL企业版本,还有很多MySQL社区版本。

1.SQL(Strcutured Query Language)语句

1.1SQL基本概念

        SQL:Structured Query Language结构化查询语句,是目前使用最广泛的关系型数据库操作语言。在数据库管理系统中,使用SQL语言来实现数据的存取、更新等功能。

        SQL标准,涉及的内容其实是SQL92里头最基本或者说最核心的一部分。SQL92本身是分级的,包括入门级、过度级、中间级和完全级。不过,SQL标准包含的内容实在太多了,而且有很多特性对新的SQL产品而言也越来越不重要了。从SQL99之后,标准中符合程度的定义就不再分级,而是改成了核心兼容性和特性兼容性;也没有机构来推出权威的SQL标准符合程度的测试认证了。

1.4SQL分类
1.4.1数据查询语言DQL(Data Query Language)

        主要用于数据查询,基本结构SELECT 字段 FROM 及 WHERE 子句组合查询一条或多条语句

        SELECT、 FROM、 WHERE、 GROUP BY、having、ORDER BY、limit

1.4.2数据操作语言DML(Data Manipulation Language)

        主要用于数据的增、删、改的操作

        INSERT INTO 、 DELETE FROM、 UPDATE 表名 SET

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

        主要用于对数据库对象(库、表、索引、视图),进行创建、修改、删除

        CREATE、ALTER、DROP    配合 table、database、default、rename to、change等关键字操作

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

        主要用于授予或回收访问数据库的权限;

        GRANT(授予权限),REVOKE(回收权限)

1.4.5事务控制语言TCL(Transaction Control Language)

        数据库的事务管理

        START TRANSACTION:开启事务

        COMMIT:提交事务

2.DDL(Definition)操作

        DDL主要用针对是数据库对象(数据库、表、索引、视图、存储过程)进行创建, 修改和删除操作。

        create创建、drop删除、alter修改;

3.DML(Manipulation)操作

3.1 添加数据 insert into

-- 1. 插入部分或全部字段

insert into 表名(字段名1,字段名2,...,字段名n) values(值1,值2,...,值n);

-- 2. 插入全部字段

insert into 表名 values(值1,值2,...,值n);3.2 修改数据

3.2修改数据 update...set

-- 语法格式

update 表名 set 字段1=值1,字段2=值2,...,字段n=值n where 条件;

3.3 删除数据 delete from

-- 语法格式

delete from 表名 where 条件;

4.DQL(Query)数据查询语句

        MySQL提供了一张虚拟表,该表名为“dual”,是MySQL为了满足用“SELECT ••• from•••”的习惯而增设的一张虚拟表。 在使用dual表时,如果没有where子句,则可以省略“from dual”, 没有实际意义, 查询的字段不属于任何表的时候, 就可以使用dual这张虚拟表。

        select 字段,[聚合函数(字段)] from 表名 [where 条件] group by 字段名 [having 条件] [排序]

5.TCL(Transaction Contral)事务控制语句

        常用的存储引擎有InnoDB(MySQL5.5以后默认的存储引擎)和MyISAM(MySQL5.5之前默认的存储引擎),其中InnoDB支持事务处理机制,而MyISAM不支持。

        事务是一个整体, 由一条或者多条SQL语句组成, 这些SQL语句要么都执行成功, 要么就失败, 只要有一条SQL出现异常, 整个操作就会回滚。

        回滚: 就是事务运行的过程中发生了某种故障, 或者SQL出现了异常, 事务不能继续执行, 系统将事务中对数据库的所有已完成的操作全部取消, 回滚到事务开始时的状态。

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

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

相关文章

LSF 概览——了解 LSF 是如何满足您的作业要求,并找到最佳资源来运行该作业的

LSF 概览 了解 LSF 是如何满足您的作业要求,并找到最佳资源来运行该作业的。 IBM Spectrum LSF ("LSF", load sharing facility 的简称) 软件是行业领先的企业级软件。LSF 将工作分散在现有的各种 IT 资源中,以创建共享的,可扩展…

国内内卷太严重,还不考虑一下在海外接单?那这几个平台你知道吗?

作为一个程序员,在平台上接单赚点外快是再正常不过的事情了,但是现今国内各个平台都内卷比较严重,你是否考虑过去“外面的世界”看看? 如果想过,那么这几个外国的接单平台你都知道吗? 接下来就和我一起来看…

vmWare虚拟机扩容及pip国内镜像源

扩展虚拟机容量 打开虚拟机.sudo apt-get install gparted pip镜像源 pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple-i https://pypi.douban.com/simple-i https:// mirrors.aliyun.com/pypi/simple

Linux CentOS7 shell

学好linux,首先要深入理解shell。 shell俗称壳,它包裹在内核的外面,是用户命令的翻译官。 作用:接收用户的命令,翻译后(处理一下)交给Linux内核处理。 用户执行命令 -> shell -> 内核 -> CPU -> 内核 -…

C/C++笔试易错与高频题型图解知识点(三)——数据结构部分(持续更新中)

目录 1. 排序 1.1 冒泡排序的改进 2. 二叉树 2.1 二叉树的性质 3. 栈 & 队列 3.1 循环队列 3.2 链式队列 4. 平衡二叉搜索树——AVL树、红黑树 5 优先级队列(堆) 1. 排序 1.1 冒泡排序的改进 下面的排序方法中,关键字比较次数与记录的初…

LeetCode 996.正方形数组的数目

和上一道状压的区别在于我们要去重一下~ 思路都是和上一篇博客是一样的&#xff0c;感兴趣的同学可以看一下 const int N 15; int dp[1<<N][N]; int n; vector<int>nums1;bool check(int x){int tem sqrt(x);if(tem*temx)return 1;return 0; }int dfs(int u,in…

比较Excel中的两列目录编号是否一致

使用java代码比较excel中两列是否有包含关系&#xff0c;若有包含关系&#xff0c;核对编号是否一致。 excel数据样例如下&#xff1a; package com.itownet.hg;import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import j…

网站如何改成HTTPS访问

在今天的互联网环境中&#xff0c;将网站更改成HTTPS访问已经成为了一种标准做法。HTTPS不仅有助于提高网站的安全性&#xff0c;还可以提高搜索引擎排名&#xff0c;并增强用户信任。因此&#xff0c;转换为HTTPS是一个重要的举措&#xff0c;无论您拥有个人博客、电子商务网站…

如何将你的PC电脑数据迁移到Mac电脑?使用“迁移助理”从 PC 传输到 Mac的具体操作教程

有的小伙伴因为某一项工作或者其它原因由Windows电脑换成了Mac电脑&#xff0c;但是数据和文件都在原先的Windows电脑上&#xff0c;不知道怎么传输。接下来小编就为大家介绍使用“迁移助理”将你的通讯录、日历、电子邮件帐户等内容从 Windows PC 传输到 Mac 上的相应位置。 在…

PicoDiagnostics (NVH设备软件)-Mongoose识别不了VIN码

如果Mongoose J2534诊断线识别不到车辆的VIN码&#xff0c;通常在PD软件中会像下图那样提示。 遇到这种情况&#xff0c;首先确保你的电脑是否已经安装J2534驱动&#xff1a;打开【设备管理器】&#xff0c;如果你将示波器和Mongoose J2534诊断线连接到电脑&#xff0c;【设备管…

EtherCAT FP介绍系列文章—RAS

RAS扩展功能包是acontis公司在EC-Master EtherCAT主站基础上提供的一套基于TCP/IP的客户端/服务器架构的Remote API。Remote API旨在远程API提供了一个接口&#xff0c;解决在操作系统中当第二个进程&#xff08;例如OPC服务器&#xff09;可能访问EtherCAT总线的数据或在Ether…

oracle 校验左括号和有括号是否对称匹配

校验数据比如名称字段的左括号和有括号是否匹配。不匹配情况有&#xff1a; 左括号是英文的&#xff0c;右括号是中文的&#xff1b;右括号是中文的&#xff0c;左括号是英文的&#xff1b; 通过正则表达式对名称进行校验&#xff0c;校验脚本如下&#xff1a; SELECT NAMEFR…

超越YOLOv8?基于Gold YOLO的自定义数据集训练

Gold-YOLO的出色性能是对Noahs Ark Lab团队的奉献和专业知识的证明。它不仅超越了其前身YOLOv8&#xff0c;还为实时目标检测设定了新标准。凭借其闪电般快速的处理能力和出色的准确性&#xff0c;Gold-YOLO承诺革命化一系列应用&#xff0c;从自动驾驶车辆到监视系统等等。 我…

影响产品开发决策的认知偏见

认知偏见存在于每个人的内心&#xff0c;并在不断影响人们的工作和生活。认识并承认自己有偏见&#xff0c;并寻求相应的解决方案&#xff0c;可以帮助我们更好的做出产品决策、团队建设和架构设计。原文: The cognitive biases that influence product development decisions …

某国产中间件企业:提升研发安全能力,助力数字化建设安全发展

​某国产中间件企业是我国中间件领导者&#xff0c;国内领先的大安全及行业信息化解决方案提供商&#xff0c;为各个行业领域近万家企业客户提供先进的中间件、信息安全及行业数字化产品、解决方案及服务支撑&#xff0c;致力于构建安全科学的数字世界&#xff0c;帮助客户实现…

解决谷歌浏览器翻译插件不能用的问题

Chrome浏览器右键翻译页面现在已经不能用了 这是因为谷歌关闭了大陆内的谷歌翻译服务&#xff0c; 所以我们需要将Chrome浏览器的翻译域名指向国内可以用的域名 首先ping一下谷歌cn域名 ping google.cn PING google.cn (108.177.97.100) 56(84) bytes of data. 64 字节&#xf…

PHP在线客服系统平台系统源码+完全开源 带完整的搭建教程

在线客服系统已经成为企业与用户进行实时沟通的重要工具。PHP作为一种流行的服务器端脚本语言&#xff0c;具有高效、稳定和易用性等优点&#xff0c;因此被广泛应用于在线客服系统的开发。今天罗峰来给大家介绍一款PHP在线客服系统平台系统源码&#xff0c;源码完全开源&#…

js实现groupby

初始结果是一个数组&#xff0c;最终得到一个对象。 let arr [{sex: male,name: xiaomi }, {sex: male,name: lisi }, {sex: female,name: zhangsan }]最终得到&#xff1a; 代码&#xff1a; const groupBy (list, key) > {const obj {};list.map(item > {if (!ob…

如何在Instagram和kol展开合作

网红营销已经演变成一个由品牌、MCN机构、红人和消费者组成的复杂生态系统&#xff0c;并在某种程度上重新定义了当今社交媒体时代营销和广告的本质。在这个情况下&#xff0c;品牌找红人进行营销推广已经成为大势&#xff0c;而最能体现网红营销发展的莫过于Instagram这个平台…

简析有源滤波器应用在光伏发电系统中

叶根胜 安科瑞电气股份有限公司 上海嘉定201801 摘要:阐述了有源滤波器在光伏行业的应用&#xff0c;介绍了有源滤波器的原理和HTQF有源滤波器的技术优势&#xff0c;并展示了HTQF有源滤波器的应用效果。 关键词:太阳能;有源滤波器;单晶炉线锯 0前言 面对日益迫切的能源危…