SQL语言介绍

  • SQL语言介绍  SQL(Structure Query Languge,结构化查询语言)是一种数据库专用的计算机语言,不管是Oracle、MS SQL 、Access、MySQL或其他公司的数据库,也不管数据库建立在大型主机或个人计算机上,都可以使用SQL语言来访问和修改数据库的内容。虽然不同公司的数据库软件多多少少会增加一些专属的SQL语法,但大体上,它们还是遵循ASNI(美国国家标准协会)制定的SQL标准。因为SQL语言具有易学习及阅读等特性,所以SQL逐渐被各种数据库厂商采用,而成为一种共通的标准查询语言。只要你学会SQL,即可操作各种数据库如Visual Foxpro、Access、dBase等等。总之,SQL语言是各种数据库都可以使用的数据库查询语言。   SQL语言不仅仅具有查询数据库的功能,而且可以对数据库完成选取、增删、更新与跳转等各种操作。

SQL语言的特点:

1. 综合统一

数据库系统的主要功是通过数据库支持的数据语言来实现。

  1. 非关系模型(层次模型、网状模型)的数据语言一般都分为:
  2. 模式数据定义语言(Schema Data Definition Language,模式DDL);
  3. 外模式数据定义语言(Schema Data Definition Language,外模式DDL,子模式DDL);
  4. 数据存储有关的描述语言(Data Storage Description Language,DSDL);

数据操纵语言(Data Manipulation Language,DML)。  它们分别用于定义模式、外模式、内模式和进行数据的存取与处置。当用户数据库投入运行后,如果需要修改模式,必须停止现有数据库的运行,转储数据,修改模式并编译后再重装数据库,十分麻烦。 
  SQL则集数据定义语言DDL、数据操纵DML、数据控制语言DCL的功能于一体,语言风格统一,可以以独立完成数据库生命周期中的全部活动,包括:

  1. 定义关系模式,插入数据,建立数据库;
  2. 对数据库中的数据进行查询和更新;
  3. 数据库重构和维护;
  4. 数据库安全性、完整性控制; 等一系列操作要求。     
    这就为数据库应用系统的开发提供了良好的环境。特别是用户在数据库系统投入运行后,还可根据需要随时地逐步地修改模式,并不影响数据库的运行,从而使系统具有良好的可扩展性。     
      另外,在关系模型中实体和实体之间的联系用关系表示,这种数据结构的单一性带来了数据操作符的统一性,查找、插入、删除、更新等每一种操作都只需一种操作符,从而克服了非关系系统由于信息表示方式的多样性带来的操作复杂性。

2. 高度非过程化

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

3. 面向集合的操作方式

费关系数据模型采用的是面向记录的操作方式,操作对象是一条记录。而SQL采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。

4. 以同一种语法结构提供多种使用方式

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

5. 语言简洁,易学易用

SQL功能极强,但由于设计巧妙,语言十分简洁,完成核心功能只有9个动词,如表所示。SQL接近英语口语,因此容易学习,容易使用。

浅谈SQL语言的特点相关推荐

  1. mysql groupby having_浅谈sql语句中GROUP BY 和 HAVING的使用方法

    在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数, 例如SUM, COUNT, MAX, AVG等.这些函数和其它函数的根本区别就是它们一般作用在多 ...

  2. 浅谈SQL Server内部运行机制

    原文:浅谈SQL Server内部运行机制 对于已经很熟悉T-SQL的读者,或者对于较专业的DBA来说,逻辑的增删改查,或者较复杂的SQL语句,都是非常简单的,不存在任何挑战,不值得一提,那么,SQL ...

  3. 浅谈 SQL Server 内部运行机制

    对于已经很熟悉T-SQL的读者,或者对于较专业的DBA来说,逻辑的增删改查,或者较复杂的SQL语句,都是非常简单的,不存在任何挑战,不值得一提,那么,SQL的哪些方面是他们的挑战 或者软肋呢? 那就是 ...

  4. 浅谈SQL注入风险 - 一个Login拿下Server(转)

    前两天,带着学生们学习了简单的ASP.NET MVC,通过ADO.NET方式连接数据库,实现增删改查. 可能有一部分学生提前预习过,在我写登录SQL的时候,他们鄙视我说:"老师你这SQL有注 ...

  5. c语言函数调用参数调用的太少,浅谈C语言函数调用参数压栈的相关问题

    参数入栈的顺序 以前在面试中被人问到这样的问题,函数调用的时候,参数入栈的顺序是从左向右,还是从右向左.参数的入栈顺序主要看调用方式,一般来说,__cdecl 和__stdcall 都是参数从右到左入 ...

  6. 事物日志恢复 mysql_浅谈SQL Server中的事务日志(五)----日志在高可用和灾难恢复中的作用...

    本篇文章是系列文章中的第五篇,是对前一个日志系列的补充篇.如果您对日志的基本概念还没有一个比较系统的了解,可以参看本系列之前的文章: 浅谈SQL Server中的事务日志(一)----事务日志的物理和 ...

  7. c程序语言的常量变量和标识符,浅谈C语言中的常量与变量.pdf

    课程教育研究 CourseEducationResearch 2014年4月 上旬刊 教学.信息 浅谈C语言中的常量与变量 刘 星 (青 岛工学院商学院 山东 青岛 266300) [摘要]在任何一种 ...

  8. 浅谈SQL Server 数据库的触发器

    浅谈SQL Server 数据库的触发器   触发器的特征: 1.触发器是在对表进行增.删.改时,自动执行的存储过程.触发器常用于强制业务规则,它是一种高级约束,通过事件进行触发而被执行. 2.触发器 ...

  9. c语言 去掉双引号_技术分享|浅谈C语言陷阱和缺陷

    良好的软件架构.清晰的代码结构.掌握硬件.深入理解C语言是防错的要点,人的思维和经验积累对软件可靠性有很大影响.C语言诡异且有种种陷阱和缺陷,需要程序员多年历练才能达到较为完善的地步.软件的质量是由程 ...

  10. c语言结构共用体的作用,浅谈C语言共用体和与结构体的区别

    共用体与结构体的区别 共用体: 使用union 关键字 共用体内存长度是内部最长的数据类型的长度. 共用体的地址和内部各成员变量的地址都是同一个地址 结构体大小: 结构体内部的成员,大小等于最后一个成 ...

最新文章

  1. Python Django 请求重定向的三种方式
  2. 操作系统【逻辑空间、物理空间与页表大小的关系】【分页地址映射(方法+例题)】
  3. visual c 语言参考手册pdf,Microsoft-Visual-C-6-0语言参考手册(三).pdf
  4. Python 程序的抽样分析器 - Py-Spy
  5. ideahtml里面没有提示_抖音上爆火的苹果充电提示音,安卓手机也可以设置了!!...
  6. PPT设置自动生成页码
  7. python图像清晰度计算_Python 做图片清晰度识别
  8. 工厂模式演进以及部分使用场景(简单工厂,工厂方法,抽象工厂)
  9. 前锋java退学_曾经的第一高中生为打CBA从清华大学退学,本赛季场均仅3.1分!...
  10. 封装仿支付宝密码输入效果
  11. 数据库期末考试(考点以及相关概念整理)
  12. 人工智能-语音交互-NLP自然语言(三) 语法-敲黑板
  13. ECharts 饼图切换数据源bug 开始没数据显示 切换或刷新后显示
  14. Hive的内置HASH()函数使用哪种哈希算法
  15. 可变悬挂调节软硬_可变悬架软硬怎么调节高度
  16. Haskell语言学习笔记(30)MonadCont, Cont, ContT
  17. 如何转换图片格式?教你三招一键轻松转换图片格式
  18. mysql去掉字段中的中文括号及括号中的内容
  19. 老铁请留步!有奖调查
  20. 2017杭电ACM集训队单人排位赛 - 2 -1002 地狱飞龙 (辛普森公式求积分)(模板)

热门文章

  1. CF914D Bash and a Tough Math Puzzle 线段树
  2. Top 10 tough core Java interview questions answers programming
  3. 2022秋招求职记录(图像 视觉 c++)
  4. Hadoop 入门教程(超详细)
  5. 什么是Redis?什么是nosql?NoSQL数据库的四大分类
  6. jsp银行排队叫号系统
  7. 大数据Hadoop(五):Hadoop架构
  8. 小白入,告诉你.ssh新建config文件究竟是哪种文件!
  9. 欧姆龙cp1h指令讲解_欧姆龙PLC功能指令
  10. 两样本非参数统计常用方法对比 R语言实现