SQL语言特点有哪些呢?
首先,尽管查询是设计SQL的最初目的,检索数据也仍然是其最重要的功能之一,但SQL决不仅仅是一个查询工具。SQL用于控制DBMS提供给用户的所有功能,包括:数据定义(Data definition):SQL可用于定义被存放数据的结构和组织,以及数据项之间的关系。 数据检索(Data retrieval):SQL能使用户或应用程序从数据库中检索数据并使用这些数据。 数据操纵(Data manipulation):用户或应用程序通过SQL更改数据库,如增加新数据,删除旧数据,修改已存入的数据等。 存取控制(Access control):SQL可用来限制用户检索,增加和修改数据的权限,...全部
首先,尽管查询是设计SQL的最初目的,检索数据也仍然是其最重要的功能之一,但SQL决不仅仅是一个查询工具。SQL用于控制DBMS提供给用户的所有功能,包括:数据定义(Data definition):SQL可用于定义被存放数据的结构和组织,以及数据项之间的关系。
数据检索(Data retrieval):SQL能使用户或应用程序从数据库中检索数据并使用这些数据。 数据操纵(Data manipulation):用户或应用程序通过SQL更改数据库,如增加新数据,删除旧数据,修改已存入的数据等。
存取控制(Access control):SQL可用来限制用户检索,增加和修改数据的权限,一保护所存储的数据不被非法存取。 数据共享(Data sharing):SQL可用于调整数据让并发用户共享,以保证用户之间彼此不受影响。
数据完整性(Data integrity):SQL能对数据库的完整性条件作出规定,以使其不会因为修改紊乱或系统出错而被破坏。
第二,SQL并不是一种像COBOL,FORTRAN和C语言等那样完整的计算机语言。
SQL没有用于条件测试的IF语句,没有用于程序分支的GOTO语句,也没有用于循环的DO或FOR语句。
确切地说,SQL是一种数据库子语言(sublanguage)。也称为第四代语言(4GL),一种非过程语言。
SQL语言简洁,为完成其核心功能只用了6个动词:SELECT、CREATE、INSERT、UPDATE、DELETE、GRANT(REVOKE)。ANSI SQL的类型
目前的ANSI SQL标准认可四种SQL语句的方法。
采用何种方法依赖于应用程序编程环境:交互式SQL(Interactive SQL):类似于Forpro,以命令行形式执行SQL语句。 嵌入式SQL(Embedded SQL):通过在SQL语句前假如一个关键字来执行SQL语句。
例如C中的EXEC SQL。 模块SQL(Module SQL):允许创建独立于3GL源代码的编译SQL语句,然后把编译好的目标模块连入可执行程序。SQL模块类似于Visual Basic代码模块,模块中包含变量说明和用来容纳查询结果集合的临时表,可以把变元值从3GL传递给SQL模块说明的过程参数。
在数据库服务器上执行预编译查询的存储过程有许多与模块SQL共同的性质。 动态SQL(Dynamic SQL):可以创建在编写语句时无法预测其内容的SQL语句(前面的多种SQL类型属于静态SQL类)。
例如:读者想设计一个可以针对多种数据库处理查询的Visual Basic应用程序。动态SQL可以以字符串形式向数据库传送查询。例如,可以向数据库传送一个查询并获得详细的信息,这些信息来自描述数据库表及表中字段的数据库字典。
在知道了数据库结构之后,应用程序用户可以创建向查询添加正确字段名的定制查询。 SQL的作用
SQL本身不是一个数据库管理系统,也不是独立的产品。事实上,SQL是数据库管理系统的一个组成部分,是用户和DBMS通信的语言和工具。
图4。
2 典型DBMS的组成SQL有下列作用:SQL是一种交互式查询语言 SQL是一种数据库编程语言 SQL是一种数据库管理语言 SQL是一种客户机/服务器语言 SQL是一种分布式数据库语言 SQL是一种数据库网关语言。收起