数据库语言分为哪四大类

说到数据库语言,这是多年来问答论坛行业经常被问到的问题。
我们来谈谈数据库语言的四大类。
与团队中的各种角色一样,每个成员都有独特的职责并执行独特的任务,以确保数据库的顺利运行。

首先我们来谈谈DQL(数据查询语言)。
这项工作的主要任务是在数据库中查找数据。
过去,在做项目时,我经常使用 SELECT、FROM 和 WHERE 关键字。
例如,要查找1 8 岁以上的用户姓名,可以写成SELECT name FROM users WHEREage > 1 8 此项只负责查询,不能修改数据。
这很简单。

然后是数据操作语言(DML),它就像数据库中的“小专家”,负责数据的增删改查。
我记得有一次,当我们试图向公司的用户表中添加一条新记录时,我们必须使用像 INSERT INTO users VALUES (1 , 'Alice') 这样的语句。
更新数据时,例如将 Alice 的年龄从 1 8 岁更改为 2 0 岁,您应该使用 UPDATE users SET Age = 2 0 WHERE name = 'Alice'。
删除数据也是类似的。
例如,要删除ID为1 的记录,可以使用DELETE FROM users WHERE id = 1 完成这些任务后,还应该注意事务控制,以保证数据的一致性。

接下来是数据定义语言(DDL),它的作用就像数据库的“设计者”,负责定义和修改数据库的结构。
例如,要创建新表,您必须使用 CREATE TABLE 等命令。
如果要修改表结构或删除索引,还需要使用DDL。
但它有一个特点,一旦执行就不可逆,所以操作时必须特别小心。

最后是数据控制语言(DCL),它就像数据库的“安全官”,负责管理访问权限和控制事务。
在权限管理方面,例如要授予用户 SELECT 权限,需要使用 GRANT SELECT ON users TO user1 这样的命令。
例如,要提交事务,必须使用COMMIT进行事务控制。
要回滚事务,您必须使用 ROLLBACK。
还有一种自动提交模式。
为了方便,有时会设置自动提交,在每个DML语句执行完毕后自动提交,无需任何人工干预。

这四类语言中,DQL负责查询,DML负责增删改查,DDL负责结构定义,DCL负责安全控制。
它们共同构成了使用数据库的基本框架。
就像一个团队一样,每个成员都必须做好自己的职责,整个项目才能顺利进行。

除了sql还有什么数据库语言

昨天我在清理旧电脑时,发现了一份2 008 年的项目文档,其中仍然包含对SQL语句的注释。
那时我们仍然使用标准的MySQL。
为了编写复杂的共享表查询,我们不得不在屏幕前反复调试一段时间。
现在想来,如果我这个时候早点接触NoSQL的话,或许项目进度会快很多。

MongoDB的查询语法确实很灵活,尤其是处理JSON格式的数据,不是特别方便。
我曾经有一个小型应用程序,用于存储用户行为日志并使用 MongoDB 进行直接 JavaScript 式查询。
一行代码可以执行 SQL 中的多个步骤。
不过,这也取决于场景。
如果数据之间联系特别紧密,那一定是SQL。

给我印象最深的国产数据库语言是达盟。
公司有一个老系统,使用的是大盟。
写SQL感觉就像用拼音输入法一样,要慢慢找字。
但确实有些功能是以一种有趣的方式实现的。
例如,它的一些统计函数比标准 SQL 版本快得多。
然而,能够使用这种语言的人并不多,兼容性也是一个问题。

XQuery和SPARQL,我确实没怎么用过。
我记得当时有一位高级工程师在做XML数据集成的工作。
这些查询语句就像一本圣经,每一条都是一个函数嵌套一个函数,这让我很惊讶。
然而,随着数据格式变得越来越多样化,XML 和 RDF 肯定占有一席之地。

等等,另一件事是一些数据库语言可以与编程语言混合。
比如MongoDB可以直接用JavaScript操作,非常方便。
但 SQL 不同。
它更多的是一种专门的查询语言,需要专门学习。
这实际上将数据库开发与编程分开,也将专家分开。

现在数据库语言非常多,选择的时候确实要慎重考虑。
不过,最常见的可能是SQL,至少现在大多数数据库都可以使用它。
但要说哪个最不麻烦,可能还要看具体使用的数据库和场景。
毕竟,没有绝对最好的技术,只有相对最适合的技术。

数据库编程语言有哪些

SQL:诞生于 1 9 7 4 年,ANSI SQL 9 2 已标准化并在所有主要数据库中使用。

PL/SQL:由Oracle于1 9 8 2 年推出,Oracle专有,用于存储过程。

Java:1 9 9 5 年发布了JDBC,用于跨平台数据库操作,2 01 1 年出现了Spring Data JPA。

Python:诞生于1 9 8 9 年,2 000年发布了SQLite,2 008 年出现了Django ORM,发展迅速。

根据场景选择语言:复杂逻辑选择PL/SQL,通用选择Java,运算更快的Python。