存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引.
统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户.
SQL为许多任务提供了命令,其中包括:
查询数据;
在表中插入、修改和删除记录;
建立、修改和删除数据对象;
控制对数据和数据对象的存取;
保证数据库一致性和完整性;
以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中.
所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的.
SQL语句: SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:
DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据;
DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象;
DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限.
DML组可以细分为以下的几个语句:
SELECT:用于检索数据;
INSERT:用于增加数据到数据库;
UPDATE:用于从数据库中修改现存的数据;
DELETE:用于从数据库中删除数据.
DDL语句可以用于创建用户和重建数据库对象.下面是DDL命令:
CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX
DDL与DML: 数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括 Create、Alter和Drop 语句.数据操作语言DML:包括数据查询与数据更新.数据查询主要是由Select语句完成,这一点不再赘述.而数据更新所造成的风险大大超过数据查询.数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的
作业.
用于修改数据库内容的 SQL 语句主要有以下三个:
(1) Insert,向一个表中加入新的数据行
(2) Delete,从一个表中删除数据行
(3) Update,更改数据库中已经存在的数据
Insert标准语法:
INSERT INTO table name (col1, col2...) VALUES (value1, value2...)
Insert 语句还可以将多行数据添加到目标表中去,在这种形式的 Insert 语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询.添加的值来自数据库自身的行,在某些特定的状态下,这是非常有用的.多行 Insert 语句为拷贝数据提供了一种紧凑而高效的方法,但我在自己做的图书管理系统中没有使用这种方法,我在系统中是使用循环依照上面的用法来完成多个记录的插入.
Update语句用于更新单表中选定行的一列或多列的值.要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值.Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行.
标准语法:
UPDATE table name
SET columnname1 = value1
[, columname2 = value2]...
WHERE search condition
Delete 语句标准语法:
DELETE FROM table name WHERE c