TT百科:SQL(结构化查询语言)

日期: 2016-10-13 作者:Jessica Sirkin翻译:张亮亮 来源:TechTarget中国 英文

SQL(结构化查询语言)是一门用于管理关系型数据库和对数据库中数据执行多种操作的标准化编程语言。SQL创建于20世纪70年代,它由数据库管理员使用,开发人员在书写数据集成脚本和数据分析的时候也用它来建立并执行分析查询。 SQL的使用包括修改数据库表和索引结构;增加,更新和删除数据记录;以及为事务处理和分析应用程序恢复数据库信息子集。查询和其他SQL操作采用的是将命令书写为语句的形式。

常用的SQL语句有选择,增加,插入,更新,删除,创建,修改和截断。 SQL在1970年代末到1980年代初成为关系型数据库事实上的标准编程语言,也被称为SQL数据库。关系型系统包含一组有行和列的表。表中的每列对应与……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

SQL(结构化查询语言)是一门用于管理关系型数据库和对数据库中数据执行多种操作的标准化编程语言。SQL创建于20世纪70年代,它由数据库管理员使用,开发人员在书写数据集成脚本和数据分析的时候也用它来建立并执行分析查询。

SQL的使用包括修改数据库表和索引结构;增加,更新和删除数据记录;以及为事务处理和分析应用程序恢复数据库信息子集。查询和其他SQL操作采用的是将命令书写为语句的形式。常用的SQL语句有选择,增加,插入,更新,删除,创建,修改和截断。

SQL在1970年代末到1980年代初成为关系型数据库事实上的标准编程语言,也被称为SQL数据库。关系型系统包含一组有行和列的表。表中的每列对应与一个数据类别,如客户名称和地址,而每行则包含了交叉列的一个数据值。

American National Standards Institute(ANSI美国国家标准协会)在1986年采用了正式的SQL标准,并且紧接着于1987年被International Organization for Standardization(ISO国际标准化组织)采用。从那时起,这两家标准制定实体对此标准发布了超过六项联合更新;最新的版本SQL 2011于今年批准。

专有的和开源关系型数据库管理系统都围绕着SQL而构建,它们都可供企业使用。它们包括Microsoft SQL Server,Oracle Database,IBM DB2,SAP HANA,SAP Adaptive Server,MySQL (如今由Oracle拥有) 以及PostgreSQL。但是,这些数据库产品中的很多是通过专有扩展来支持SQL的,而这些扩展是专门针对用于过程编程和其他功能的标准语言的。例如,Microsoft提供了一组名为Transart-SQL(T-SQL)的扩展,而Oracle对于该标准的扩展版本是PL/SQL。因此,供应商所提供的SQL的不同变体并不能互相完全兼容。

SQL命令分为几种不同的类型,其中有数据操纵语言(DML)和数据定义语言(DDL)语句,事务控制和安全措施。DML词汇用于恢复和操作数据,而DDL语句则是用于对数据库结构进行定义和修改。事务控制有助于管理事务处理,确保事务要么完成,要么在错误或问题发生的时候进行回滚。而安全语句是用于控制数据库访问以及创建用户角色和权限的。

SQL语法是在书写语句时候的编码格式。图1给出了一个用Microsoft的T-SQL书写的DDL语句例子,它是用来对SQL Server 2016中的一个数据库表进行修改的。

SQL Server 2016中的T-SQL代码示例

图1. SQL Server 2016中的T-SQL代码示例。这是针对ALTER TABLE WITH (ONLINE = ON | OFF)选项的代码。

SQL-on-Hadoop查询引擎是SQL的一个较新的分支,它可以让有围绕Hadoop系统而构建的大数据架构的企业对其进行利用从而不必使用更为复杂且生疏的语言。特别是用于开发批处理应用程序的MapReduce编程环境。通过Hadoop分销商和其他供应商已有十多款SQL-on-Hadoop工具可供使用了。其中很多是开源软件或是这些技术的商业版本。此外,Apache Spark处理引擎通常用于连接Hadoop,包括一个Spark SQL模型,它同样支持基于SQL的编程。

一般来说,SQL-on-Hadoop仍是一项新兴技术,而且大多数可用的工具并不支持SQL关系型实现中所提供的所有功能。但随着各个公司寻求获得拥有大数据应用程序编程SQL技能的开发和分析人员,它们正逐渐成为Hadoop部署的固定组件。

作者

Jessica Sirkin
Jessica Sirkin

TechTarget网站副主编,主要负责SearchOracle和SearchSQLServer网站的内容建设。

翻译

张亮亮
张亮亮

TechTarget特邀编辑。毕业于北京邮电大学网络技术研究院。熟悉软件开发测试的各个环节和流程,对操作系统,数据库,计算机网络等有较为深入的理解。现就职于中国电子科技集团公司下属研究所,从事软件研发工作。热衷于英文的学习交流,平时喜欢户外运动,音乐,电影。

相关推荐