SQL是交互式式或嵌入式措辞。在交互式SQL环境中,用户输入的SQL命令直接发送到数据库管理系统,得到结果后立即显示。DBMS的做事器同时拥有图形和命令行工具,用一接管用户输入的SQL语句或包含SQL程序(脚本)的文本文件。
在开拓数据库运用程序时,可以将SQL语句“嵌入”到编写程序所用的宿主措辞(host language)中。宿主措辞常日是一种通用措辞(如C++、Java)或脚本措辞(如PHP或Python).如一个PHP CGI脚本可以用SQL语句来查询MySQL数据库,MySQL交查询的结果返回给PHP变量,以便进一步剖析或显示在网页上。
但在DBMS、宿主措辞或操作环境中,语法上略有差异。

SQL表示“构造化查询措辞”是一种变通的误解。它不是构造化的,不但用于查询,不是一种过程措辞。
目前所有的关系型数据库管理系统如oracle、SQL Server、DB2、VFP都支持SQL。
查询只是SOL措辞的主要组成部分,但不是全部。
数据定义:对表、表构造的操作,用create、drop、alter三个命令动词;
数据操作:对表记录的操作,用insert、delete、update三个命令动词;
数据掌握:用grant、revoke二个命令动词;
数据查询:只有selec一个命令动词。
全体SQL,共9个命令动词对表、对表中列、行的操作:
创建、变动和删除表;
插入、更新和删除行;
查询(从n表中)选择列,筛选行;
数据定义语句:对表或表构造的操作CreateAlterDrop数据操作语句:对表记录的操作InsertUpdateDelete数据查询语句Select数据掌握语句Grantrevokestudent(学生表):
son char(5) 学号
sname char(20) 姓名
ssex tinyint(1) 性别
sage char(3) 年事
sdept char(20) 所在系
1 增(记录)INSERT INTO student (son,sname) VALUES('17050600156','Henrry')
2 查(记录)SELECT sname,sage FROM student WHERE sage<20
(查询所熟年龄在20岁以下的学生姓名及其年事)
Select的选择项可以是表文件中的一个字段,也可以是一个常量,也可以是一个表达式,对付字段和表达式还可以利用下列函数:avg、sum、count、min、max等。
索引是排序的列表,在这个列表中索引列(或列表)的每个不同值和包含该值的行的硬盘地址存储在一起。DBMS无需检索全体表来定位行,而仅需扫描索引中的地址,就可以直接访问相应列。索引搜索常日要比顺序搜索快,但也是有代价的。其本色也便是另建了一张反响被索引表的行的地址清单。
3 删(记录)DELETE FROM student WHERE sname = 'Henrry'
4 改(记录)UPDATE student SET sname = 'Penny' WHERE sname = 'Henrry'
5 补充SQL的三级模式:
外模式:视图
模式:基本表
内模式:存储文件
视图是存储的select语句,它能返回基于一个或多个表(或称作根本表)检索得到的数据表;
视图的根本表可以是基本表、临时表或其他视图,是指定的数据列或数据行的凑集。
CREATE VIEW view-customes ...AS SELECT ...
创建视图并不会有任何显示,只是为了让DBMS用一个命名的select语句存储视图,然后通过其检索数据。
reference:http://www.w3school.com.cn/sql/sql_select.asp
-End-