SQL语言

#编程语言# 0 0
Structured Query Language(结构化查询语言,简称SQL),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
  • 中文名称: 结构化查询语言
  • 外文名称: Structured Query Language
  • 发布时间: 1986年10月
详细介绍 PROFILE +

基本介绍

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

简介

SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。由于它具有功能丰富、使用方便灵活、语言简洁易学等突出的优点,深受计算机工业界和计算机用户的欢迎。1980年10月,经美国国家标准局(ANSI)的数据库委员会X3H2批准,将SQL作为关系数据库语言的美国标准,同年公布了标准SQL,此后不久,国际标准化组织(ISO)也作出了同样的决定。

SQL从功能上可以分为3部分:数据定义、数据操纵和数据控制。

SQL的核心部分相当于关系代数,但又具有关系代数所没有的许多特点,如聚集、数据库更新等。它是一个综合的、通用的、功能极强的关系数据库语言。其特点是:

1、数据描述、操纵、控制等功能一体化。

2、两种使用方式,统一的语法结构。SQL有两种使用方式。一是联机交互使用,这种方式下的SQL实际上是作为自含型语言使用的。另一种方式是嵌入到某种高级程序设计语言(如C语言等)中去使用。前一种方式适合于非计算机专业人员使用,后一种方式适合于专业计算机人员使用。尽管使用方式不向,但所用语言的语法结构基本上是一致的。

3、高度非过程化。SQL是一种第四代语言(4GL),用户只需要提出“干什么”,无须具体指明“怎么干”,像存取路径选择和具体处理操作等均由系统自动完成。

4、语言简洁,易学易用。尽管SQL的功能很强,但语言十分简洁,核心功能只用了9个动词。SQL的语法接近英语口语,所以,用户很容易学习和使用。

历史起源

在1970年代初,由IBM公司San Jose,California研究实验室的埃德加·科德发表将数据组成表格的应用原则(Codd's Relational Algebra)。1974年,同一实验室的D.D.Chamberlin和R.F. Boyce对Codd's Relational Algebra在研制关系数据库管理系统System R中,研制出一套规范语言-SEQUEL(Structured English QUEry Language),并在1976年11月的IBM Journal of R&D上公布新版本的SQL(叫SEQUEL/2)。1980年改名为SQL。

1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2和SQL/DS数据库系统中也实现了SQL。

1986年10月,美国ANSI采用SQL作为关系数据库管理系统的标准语言(ANSI X3. 135-1986),后为国际标准化组织(ISO)采纳为国际标准。

1989年,美国ANSI采纳在ANSI X3.135-1989报告中定义的关系数据库管理系统的SQL标准语言,称为ANSI SQL 89,该标准替代ANSI X3.135-1986版本。

产品设计

语句结构

结构化查询语言包含6个部分:

1、数据查询语言(DQL:Data Query Language):其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其它类型的SQL语句一起使用。

2、数据操作语言(DML:Data Manipulation Language):其语句包括动词INSERT、UPDATE和DELETE。它们分别用于添加、修改和删除。

3、事务控制语言(TCL):它的语句能确保被DML语句影响的表的所有行及时得以更新。包括COMMIT(提交)命令、SAVEPOINT(保存点)命令、ROLLBACK(回滚)命令。

4、数据控制语言(DCL):它的语句通过GRANT或REVOKE实现权限控制,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。

5、数据定义语言(DDL):其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表(CREATE TABLE或DROP TABLE);为表加入索引等。

6、指针控制语言(CCL):它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。

语言特点

SQL风格统一

SQL可以独立完成数据库生命周期中的全部活动,包括定义关系模式、录入数据、建立数据库、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作,这就为数据库应用系统开发提供了良好的环境,在数据库投入运行后,还可根据需要随时逐步修改模式,且不影响数据库的运行,从而使系统具有良好的可扩充性。

高度非过程化

非关系数据模型的数据操纵语言是面向过程的语言,用其完成用户请求时,必须指定存取路径。而用SQL进行数据操作,用户只需提出“做什么”,而不必指明“怎么做”,因此用户无须了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据独立性。

面向集合的操作方式

SQL采用集合操作方式,不仅查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。

以同一种语法结构提供两种使用方式

SQL既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式,用户可以在终端键盘上直接输入SQL命令对数据库进行操作。作为嵌入式语言,SQL语句能够嵌入到高级语言(如C、C#、JAVA)程序中,供程序员设计程序时使用。而在两种不同的使用方式下,SQL的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的操作方式,为用户提供了极大的灵活性与方便性。

语言简洁,易学易用

SQL功能极强,但由于设计巧妙,语言十分简洁,完成数据定义、数据操纵、数据控制的核心功能只用了9个动词:CREATE、ALTER、DROP、SELECT、INSERT、UPDATE、DELETE、GRANT、REVOKE。且SQL语言语法简单,接近英语口语,因此容易学习,也容易使用。

SQL语句

数据定义

在关系数据库实现过程中,第一步是建立关系模式,定义基本表的结构,即该关系模式是哪些属性组成的,每一属性的数据类型及数据可能的长度、是否允许为空值以及其它完整性约束条件。

定义基本表:

CREATE TABLE([列级完整性约束条件]

[,[列级完整性约束条件]]…

[,[列级完整性约束条件]]

[,表列级完整性约束条件]);

说明:

①中是SQL语句必须定义的部分,[]中是SQL语句可选择的部分,可以省略的。

②CREATE TABLE表示是SQL的关键字,指示本SQL语句的功能。

③是所要定义的基本表的名称,一个表可以由一个或若干个属性(列)组成,但至少有一个属性,不允许一个属性都没有的表,这样不是空表的含义。多个属性定义由圆括号指示其边界,通过逗号把各个属性定义分隔开,各个属性名称互不相同,可以采用任意顺序排列,一般按照实体或联系定义属性的顺序排列,关键字属性组在最前面,这样容易区分,也防止遗漏定义的属性。

④每个属性由列名、数据类型、该列的多个完整性约束条件组成。其中列名一般为属性的英文名缩写,在Microsoft Access 2010中也可以采用中文,建议不要这样做,编程开发时不方便。

⑤完整性约束条件,分为列级的完整性约束和表级的完整性约束,如果完整性约束条件涉及该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。这些完整性约束条件被存入系统的数据字典中,当用户操作表中数据时由RDBMS自动检查该操作是否违背这些完整性约束,如果违背则RDBMS拒绝本次操作,这样保持了数据库状态的正确性和完整性,不需要用户提供检查,提高了编程的效率,降低了编程难度。列级的完整性通常为主关键字的定义、是否允许为空。表级的完整性约束条件一般为外码定义。

数据操纵

数据操纵语言是完成数据操作的命令,一般分为两种类型的数据操纵。

①数据检索(常称为查询):寻找所需的具体数据。

②数据修改:插入、删除和更新数据。

数据操纵语言一般由INSERT(插入)、DELETE(删除)、UPDATE(更新)、SELECT(检索,又称查询)等组成。由于 SELECT经常使用,所以一般将它称为查询(检索)语言并单独出现。

数据管理

数据管理(又称数据控制)语言是用来管理(或控制)用户访问权限的。由GRANT(授权)、REVOKE(回收)命令组成。而Visual Foxpro6不支持这种权限管理。

SQL中的数据查询语句

数据库中的数据很多时候是为了查询,因此,数据查询是数据库的核心操作。而在SQL中,查询语言只有一条,即 SELECT语句。

特色功能

SQL具有数据定义、数据操纵、和数据控制的功能。

1、SQL数据定义功能:能够定义数据库的三级模式结构,即外模式、全局模式和内模式结构。在SQL中,外模式又叫做视图(View),全局模式简称模式(Schema),内模式由系统根据数据库模式自动实现,一般无需用户过问。

2、SQL数据操纵功能:包括对基本表和视图的数据插入、删除和修改,特别是具有很强的数据查询功能。

3、SQL的数据控制功能:主要是对用户的访问权限加以控制,以保证系统的安全性。

本百科词条由网站注册用户【 CN109289 】编辑上传提供,当前页面所展示的词条介绍涉及宣传内容属于注册用户个人编辑行为,网站不完全保证内容信息的准确性、真实性,也不代表本站立场。 版权声明 反馈 我要认领
词条所在榜单
相关知识文章
十大热门编程语言排名 编程语言排行榜 编程语言哪个前景好
全世界有数种编程语言,但最常用的还是那几种。如今随着时代的发展,一些编程语言的受欢迎程度也发生着微妙的变化。本文中maiGoo小编就带大家看看当下最具影响力的编程语言有哪些,例如Python、C、C++、Java、C#、JavaScript、Visual Basic、PHP等,仍具有一定代表性,仍是现在最流行的编程语言。
十大二手书交易平台 旧书网站推荐 卖二手书去哪个网站好
伴随90后、00后新消费主力人群的形成,各大二手交易平台逐渐年轻化,出售闲置物品也更加多元,除了交易数量较多的汽车、数码、服装等商品外,图书也是一大类别,那么卖二手书去哪个网站好?下面maigoo小编为大家分享十大好用的二手书交易平台,包括孔夫子旧书网、多抓鱼、有路网、闲鱼、旧书街、转转、123图书馆、漫游鲸、渔书等等,一起来了解下吧。
十大游戏交易平台排行榜 正规游戏账号交易平台 热门游戏交易平台
游戏交易平台有官方的,也有第三方的,无论选择哪一种,“安全交易”都是至关重要的,那么游戏交易平台有哪些?游戏交易平台哪个好?下面小编为大家盘点十大热门游戏交易平台,包括交易猫、5173平台、淘手游、网易藏宝阁、SteamPY、悠悠游戏服务网等,一起来了解下吧。
十大编程软件排行榜 编程开发工具大全 c语言编程软件有哪些
世界上主流的编程语言有C、Java、Python、C++、C#、Visual Basic、PHP等,针对这些编程语言,又有相对应的Visual C++、Visual Studio、Eclipse、Dev-C++、Notepad++、MyEclipse、JDK、Code::Blocks、Gcc、Sublime Text、IntelliJ IDEA、Ultraedit、C-Free等编程软件,被广泛运用,下面跟随maigoo网编辑一起了解下这些编程工具!
十大天气预报APP软件 好用的天气app排行 天气预报软件哪个最准确
比达咨询(BDR)研究数据显示,我国移动天气软件以2009-2013年为萌芽期,各类天气预报app相继衍生,到2016年得益于大数据、物联网、云计算等技术的应用,从而进入高速发展期。时至今日,墨迹天气、最美天气、天气通、彩云天气、2345天气王、中国天气通等天气app已与人们的生活密不可分,下面跟随MAIGoo编辑来认识下!
十大发型设计软件 测脸型配发型软件叫啥 测适合自己发型的软件推荐
我国美容美发已达到3500亿元以上的市场规模,并处于不断增长中。在这个具备千亿产值的行业里,发型设计软件是一个较新的领域,还有很大的发展空间。这类软件一定程度上能帮助个人无成本尝试新发型,同时亦具有娱乐性。下面和maigoo小编来看看发型屋、美可发型、试发型相机、测脸型等脸型测试配发型的软件!
十大解压软件 解压缩软件哪个好用 文件压缩软件哪个好
在这个信息碎片化的时代,电脑上各种类型的文件数不胜数,一款好用的压缩软件,既能以较高质量集合保存个人信息,又能节省硬盘空间;纵观全网,备受推崇的解压缩软件有WinRAR、7-zip、2345好压、360压缩、Bandizip、快压、WinZip、PeaZip等,下面跟随MaiGoo网编辑了解下这些解压软件!
十大ppt模板网站排行 好用的ppt网站推荐 ppt模板下载网站有哪些
一个优秀的PPT,虽然不能决定你的成与败,但能直接影响观看者对你的工作能力、产品或服务的认同感,特别是在产品发布、路演、招商引资等场合。本文中maigoo网编辑盘点了OfficePLUS、摄图网PPT、包图网PPT、优品PPT、51PPT、第一PPT、稻壳儿、迅捷PPT、51PPT等ppt模板下载网站、ppt素材网站,下面一起看看!
七大去马赛克软件排行 视频去马赛克软件哪个好用 马赛克去除工具推荐
马赛克是使用频率最高、使用范围最广的一种图片/视频处理手段,涉及新闻、动漫、电影、连续剧、写真等方面。作为一种具备了数十年历史的处理技术,马赛克沿用到今天有什么破解方法呢?Maigoo小编为此盘点了一批去除马赛克的软件,其中有JavPlayer、Video Enhancer、DeepCreamPy、TecoGAN、Face Depixelizer、EnhanceNet等视频马赛克去除工具,一起看看!
十大游戏陪玩软件排行 游戏陪练app哪个好 陪玩打游戏的软件
随着国内游戏陪玩市场的不断完善,各大游戏陪玩平台也在不断洗牌,那么当下最火的游戏陪玩软件有哪些呢?下面maiGoo小编为大家盘点十大游戏陪练app,包括斗鱼一起玩、小鹿组队、点点开黑、哈哈喵开黑、猎游、捞月狗等,一起来了解下吧。
十大动画制作软件 动漫制作软件盘点 自己做动画的软件有哪些
动画制作分为二维动画与三维动画技术,涉及软件主要分为2D和3D二种类型。在动画行业中制作动画的软件种类越来越多,越来越丰富,你知道哪个动画制作软件比较好用?画动漫软件哪个好?下面MAIGOO小编就为大家介绍十大最好用动画制作软件,分别有Autodesk Maya、Adobe Animate、3DS Max、AE、C4D、Blender、Harmony、Cascadeur‌、TVP、Dragonframe。
十大批发网站 进货批发网站哪个好 批发进货平台有哪些
国家统计局数据显示,我国批发和零售业从业人员据不完全统计,已达千万人次,在所有批发领域中,矿产品、建材、化工产品、机械设备、五金交电、食品、饮料、烟草、服装、日用品等,是销售额最高的品类。本文中maigoo编辑盘点了阿里巴巴1688、拼多多批发、义乌购、爱采购、义采宝、惠农网、货捕头、包牛牛等进货批发网站、小商品批发平台,一起了解下!
十大旧衣服回收平台 有偿回收旧衣服的平台 正规回收旧衣服机构
我国每年有数万吨旧衣服进入垃圾场,极少数能被回收利用。其实我们可以把旧衣服捐给贫困地区,也可以二手转卖。下面MaiGoo小编和大家一起看看旧衣物回收平台有哪些,一起了解下飞蚂蚁、白鲸鱼、鸥燕回收、92回收、噢啦OOLA等正规回收旧衣服机构。
十大网络电话软件 网络电话哪个软件好用 网络电话呼叫软件推荐
工信部针对通信业的相关报告显示,我国三家通讯商的移动电话用户总数已超过17.07亿,面对庞大的用户群体,除了手机实时电话通讯外,网络电话呼叫软件亦成为主流选择。现阶段,除了微信、QQ等具有语音功能的社交软件外,Skype、北瓜电话、Facetime、UU电话等网络电话软件的使用频率也相对较高,下面跟随maigoo编辑来看看!
十大室内设计软件 装修设计软件排名 家装设计软件哪个最好用
室内设计是一个专业性极强的领域,设计师要在安全、实用、有限预算的前提下,充分考虑空间、色彩、光影、装饰、陈设、绿化等要素进行设计;那么在当今室内设计领域,有哪些好用的装修设计软件呢?3D Max、AutoCAD、酷家乐、草图大师、Lightscape、Sweet Home 3D、爱福窝等室内设计软件如何?下面跟随买购网编辑一起看看!
十大建模软件排行榜 3d建模软件有哪些 3d制图软件哪个好
3d建模软件颠覆了传统的2D模式,在游戏、影视、建筑/室内设计、VR/AR、电商、工业设计、军工设计等多个重要领域有着广泛应用,并在一定程度上改变着行业的发展格局,那么在这种大环境下,相关从业者和爱好者有哪些3D制图软件可以使用?3DS MAX、Maya、Rhino、Blender、ZBrush、SketchUp等建模软件效果如何?下面跟随maigoo编辑来看看!
十大日本购物网站排名 日本代购网站推荐 日本网上购物平台有哪些
日本是世界上最大的电商市场之一,位居全球前五。在日本,乐天、亚马逊、雅虎购物、Zozotown、Kakaku、DMM、Mercari等日本购物平台,是民众使用频率最高的购物网站,其热销品类与中国的相比,没有太大差异,主要是电子产品及配件、家居、玩具、家纺等等。下面和maigoo小编一起了解下这些日本网上购物网站!
十大围棋软件排名 下围棋软件哪个好 学围棋app推荐
在手机或电脑上下围棋、象棋、五子棋,或是下跳棋、军棋等,都非常常见。围棋软件拉进了棋友们的距离,即使天各一方,也能连上网络下一盘棋。下面CNPP小编和大家一起看看围棋软件哪个好。相对知名的下围棋软件有弈客围棋、星阵围棋、弈城围棋、佳弈少儿围棋、忘忧围棋等。
十大摄影网站排名 高清摄影网站推荐 摄影作品网站有哪些
从摄影技术诞生的第19世纪,到依托科学技术变革摄影行业、带来一系列创新的21世纪,摄影已完全普及开来,走入了千家万户。对许多专业和业余摄影者来说,有哪些好用的摄影网站呢?下面maigoo小编为大家分享十大广受青睐的高清摄影网站,包括500PX、色影无忌、Flickr、Magnum photos、蜂鸟网、POCO、图虫、1X、Ippawards、米拍等,一起来了解下这些摄影作品网站!
十大域名网站排名 中文域名购买网站盘点 域名注册服务网站哪个好
中国信通院《互联网域名产业报告》显示,我国已成为仅次于美国的第二大域名注册市场,其中中文域名的注册量已达到100万以上,能在世界上的任何地方实时访问。本文中maigoo编辑盘点了一批域名注册服务网站,如GoDaddy、万网、西部数码、新网、NameSilo、Namecheap、易名等域名注册商、英文/中文域名网站的市场份额较高,一起看看。