首页 > 数据库 >SQL 是什么

SQL 是什么

时间:2023-09-19 15:48:35浏览次数:35  
标签:结构化 什么 命令 SQL 查询语言 数据 数据库

一、什么是 SQL?

SQL 是结构化查询语言的缩写形式,读作 SQL,有时读作 See-Quell。

这种数据库语言主要是为维护关系数据库管理系统中的数据而设计的。它是数据专业人员用于处理结构化数据(以表格形式存储的数据)的特殊工具。它还设计用于 RDSMS 中的流处理。

您可以轻松地创建和操作数据库,访问和修改表的行和列等。这种查询语言在 1986 年成为 ANSI 标准,在 1987 年成为 ISO 标准。

如果你想在数据科学领域找到一份工作,那么它是最重要的查询语言学习。Facebook、Instagram 和 LinkedIn 等大企业使用 SQL 将数据存储在后端。

二、为什么 使用 SQL?

如今,SQL 广泛用于数据科学和分析。以下是解释为什么它被广泛使用的原因:

  • 对于数据专业人员和 SQL 用户,SQL 的基本用途是从关系数据库中插入、更新和删除数据。
  • SQL 允许数据专业人员和用户从关系数据库管理系统中检索数据。
  • 它还可以帮助他们描述结构化数据。
  • 它允许 SQL 用户创建、删除和操作数据库及其表。
  • 它还有助于在关系数据库中创建视图、存储过程和函数。
  • 它允许您定义数据并修改关系数据库中存储的数据。
  • 它还允许 SQL 用户设置表列、视图和存储过程的权限或约束。

三、SQL 的历史

《A Relational Model of Data for Large Shared Data Banks》是伟大的计算机科学家“EF Codd”于1970年发表的一篇论文。

IBM 研究人员 Raymond Boyce 和 Donald Chamberlin 在学习 EF Codd 给出的论文后最初开发了 SEQUEL(结构化英语查询语言)。他们都于 1970 年在 IBM 公司的圣何塞研究实验室开发了 SQL。

在 1970 年代末,关系软件公司使用 EF Codd、Raymond Boyce 和 Donald Chamberlin 的概念开发了他们自己的第一个 SQL。该 SQL 完全基于 RDBMS。Relational Software Inc.,即现在的 Oracle Corporation,于 1979 年 6 月推出了 Oracle V2,这是 SQL 语言的第一个实现。此 Oracle V2 版本在 VAX 计算机上运行。

四、SQL的 执行过程

当我们在任何关系数据库管理系统上执行 SQL 命令时,系统会自动找到执行我们请求的最佳例程,并且 SQL 引擎决定如何解释该特定命令。

结构化查询语言在其过程中包含以下四个组件:

  • 查询调度程序
  • 优化引擎
  • 经典查询引擎
  • SQL查询引擎等

经典查询引擎允许数据专业人员和用户维护非 SQL 查询。SQL的架构如下图所示:

五、一些常用 SQL 命令

SQL 命令有助于创建和管理数据库。最常用的 SQL 命令如下:

  1. CREATE 命令
  2. UPDATE 命令
  3. DELETE 命令
  4. SELECT 命令
  5. DROP 命令
  6. INSERT 命令

CREATE 命令

此命令有助于创建新数据库、新表、表视图和数据库的其他对象。

UPDATE 命令

此命令有助于更新或更改数据库中存储的数据。

DELETE 命令

此命令有助于从数据库表中删除或擦除已保存的记录。它从数据库的表中删除单个或多个元组。

SELECT 命令

此命令有助于从数据库的一个或多个表中访问单行或多行。我们也可以将此命令与 WHERE 子句一起使用。

DROP 命令

此命令有助于从数据库中删除整个表、表视图和其他对象。

INSERT 命令

此命令有助于将数据或记录插入数据库表中。我们可以轻松地将记录插入到表的单行和多行中。

六、SQL 与No SQL

下表描述了 SQL 和 NoSQL 之间的区别,有必要了解:

SQLNo SQL
1. SQL是关系型数据库管理系统。 1. No-SQL 是一种非关系型或分布式数据库管理系统。
2. 本数据库系统使用的查询语言是结构化查询语言。 2. No-SQL 数据库系统中使用的查询语言是一种非声明式查询语言。
3、SQL数据库的schema是预定义的、固定的、静态的。 3. No-SQL 数据库的模式是非结构化数据的动态模式。
4. 这些数据库是垂直可扩展的。 4. 这些数据库是水平可扩展的。
5、SQL的数据库类型是表的形式,即行和列的形式。 5. No-SQL的数据库类型有文档、键值和图的形式。
6.SQL遵循ACID模型。 6.No SQL遵循BASE模型。
7.复杂的查询在SQL数据库中很容易管理。 7. NoSQL 数据库无法处理复杂的查询。
8. 此数据库不是存储分层数据的最佳选择。 8. No-SQL 数据库是存储分层数据的完美选择。
9. 所有 SQL 数据库都需要对象关系映射。 9. 许多 No-SQL 数据库不需要对象关系映射。
10. Gauges、CircleCI、Hootsuite等是使用这种查询语言的顶级企业。 10. Airbnb、Uber 和 Kickstarter 是使用这种查询语言的顶级企业。
11. SQLite、Ms-SQL、Oracle、PostgreSQL 和 MySQL 是 SQL 数据库系统的示例。 11. Redis、MongoDB、Hbase、BigTable、CouchDB 和 Cassandra 是 NoSQL 数据库系统的示例。

七、SQL 的优点

SQL 提供了各种优势,使其在数据科学领域更受欢迎。它是一种完美的查询语言,允许数据专业人员和用户与数据库进行通信。以下是结构化查询语言的最佳优点或好处:

1.无需编程

SQL 不需要大量的代码行来管理数据库系统。我们可以使用简单的 SQL 语法规则轻松访问和维护数据库。这些简单的规则使 SQL 用户友好。

2. 高速查询处理

使用 SQL 查询可以快速有效地从数据库中访问大量数据。对数据的插入、删除和更新操作也可以在更短的时间内执行。

3.标准化语言

SQL 遵循历史悠久的 ISO 和 ANSI 标准,为全球所有用户提供了一个统一的平台。

4. 便携性

结构化查询语言可以轻松用于台式电脑、笔记本电脑、平板电脑甚至智能手机。也可根据用户要求与其他应用程序配合使用。

5.交互语言

我们可以很容易地学习和理解 SQL 语言。我们也可以使用这种语言与数据库进行通信,因为它是一种简单的查询语言。这种语言还用于在几秒钟内接收复杂查询的答案。

6.多个数据视图

SQL 语言还有助于为不同的数据库用户制作数据库结构的多个视图。

八、SQL的缺点

虽然 有 SQL 优点,它也有一些缺点,具体如下:

1.成本

部分 SQL 版本的运行成本较高。这就是为什么有些程序员不能使用结构化查询语言。

2.接口复杂

另一个很大的缺点是结构化查询语言的界面比较难,SQL用户很难使用和管理。

3.部分数据库控制

业务规则是隐藏的。因此,使用这种查询语言的数据专业人员和用户无法完全控制数据库。

 

标签:结构化,什么,命令,SQL,查询语言,数据,数据库
From: https://www.cnblogs.com/maaa/p/17714810.html

相关文章

  • mysql TRUNCATE DELETE DROP
    https://www.cnblogs.com/cy0628/p/15019630.html     truncate与drop,delete的对比(重要)12345678上面说过truncate与delete,drop很相似,其实这三者还是与很大的不同的,下面简单对比下三者的异同。 truncate与drop是DDL语句,执行后无法回滚;delete是DML......
  • SQL 数据类型
    数据类型用于表示可以存储在数据库表中的数据的性质。例如,在表的特定列中,如果我们要存储字符串类型的数据,那么我们必须声明该列的字符串数据类型。每个数据库的数据类型主要分为三类。字符串数据类型数值数据类型日期和时间数据类型一、MySQL数据类型 MySQL字符串类型......
  • SQL 创建数据库
    在SQL中,“CreateDatabse”语句是将结构化数据存储在数据库中的第一步。数据库开发人员和用户使用SQL中的此语句在数据库系统中创建新数据库。它使用在CreateDatabase语句中指定的名称创建数据库。一、SQL创建数据库语法CREATEDATABASEDatabase_Name;在此语法中,D......
  • SQL 运算符
    每个数据库管理员和用户都使用SQL查询来操作和访问数据库表和视图的数据。数据的操作和检索是在保留字和字符的帮助下进行的,用于执行算术运算、逻辑运算、比较运算、复合运算等。什么是SQL运算符?SQL保留字和字符称为运算符,它们与SQL查询中的WHERE子句一起使用。在SQL......
  • SQL 选择数据库
    假设数据库用户和管理员想要在SQL中对特定现有数据库上的表、视图和索引执行一些操作。首先,他们必须选择要在其上运行数据库查询的数据库。任何数据库用户和管理员都可以使用SQL中的USE语句轻松地从当前数据库服务器中选择特定数据库。一、SQL选择数据库语法USEdatabase......
  • SQL 重命名数据库
    在某些情况下,数据库用户和管理员出于某些技术原因想要更改数据库的名称。因此,SQL中的RenameDatabase语句用于更改现有数据库的名称。有时,使用RenameDatabase语句是因为开发人员认为原始名称与数据库的数据没有更多相关性,或者他们想给该数据库一个临时名称。一、SQL重命名......
  • SQL 删除数据库
    SQLDropDatabase语句从数据库系统中永久删除现有数据库。如果存储在数据库中,此语句将删除所有视图和表,因此在SQL中使用此查询时要小心。以下是从数据库系统中删除数据库之前需要学习的最重要的几点:此语句从数据库中删除所有数据。如果将来要恢复已删除的数据,则应保留要删......
  • orcle和mysql的区别
    orcle和mysql的区别Oracle数据库产品是闭源同时也是收费的,MySQL是开源的项目(免费);Oracle是大型数据库,Mysql是中小型数据库;Oracle可以设置用户权限、访问权限、读写权限等,MySQL没有;Oracle有表空间的概念,MySQL没有;Oracle默认不自动提交,需要用户手动提交。Mysql默认是......
  • 关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的"/g"是什么意
    为了解答“正则表达式(/[^0-9]/g,'')中的"/g"是什么意思?”这个问题,也为了能够便于大家对正则表达式有一个更为综合和深刻的认识,我将一些关键点和容易犯糊涂的地方再系统总结一下。 总结1:附件参数g的用法 表达式加上参数g之后,表明可以进行全局匹配,注意这里“可以”的含义。我们详......
  • sql server单一某列实现排序
    WDBHAPPBHWDMC430175500443659sg430044033903992转发省环境保护厅省财政厅关于印发广东省排污权有偿使用和交易试点管理办法的通知(会签文)(修改).doc430175500443659430044033903992转发省环境保护厅省财政厅关于印发广东省排污权有偿使用和交易试点管理办法的通知(会签文).doc......