目 录 引言... 1 http://www.paper51.com 1 SQL概述及特点... 1 copyright paper51.com
1.1 SQL概述... 1 内容来自论文无忧网 www.paper51.com
1.2 SQL语言的特点... 1 内容来自论文无忧网 www.paper51.com 2 数据定义语句... 1 copyright paper51.com 3 数据操作语句... 3 copyright paper51.com 3.1 数据查询语句... 3 paper51.com 3.1.1 基本查询操作... 3 内容来自论文无忧网 www.paper51.com 3.1.2 where子句查询... 3 http://www.paper51.com 3.1.3 查询结果的排序与分组... 8 copyright paper51.com
3.2 数据更新语句... 10 内容来自论文无忧网 www.paper51.com
3.2.1数据插入... 10 http://www.paper51.com 3.2.2数据修改... 10 内容来自www.paper51.com 3.2.3数据删除... 10 内容来自www.paper51.com
4 数据控制语句... 11 http://www.paper51.com 4.1 授权语句... 11 copyright paper51.com
4.2 收权语句... 11 http://www.paper51.com 5 嵌入式SQL. 11 paper51.com 6 优化SQL查询... 11 http://www.paper51.com
6.1 创建索引... 12 内容来自www.paper51.com 6.2 优化查询语句... 12 copyright paper51.com
6.2.1 避免在select语句中使用“*”. 12 内容来自www.paper51.com 6.2.2 调整where子句中连接条件的顺序... 12 内容来自www.paper51.com 6.2.3 避免使用or关键字... 12 内容来自论文无忧网 www.paper51.com 6.2.4 避免使用<>和!=操作符... 12 http://www.paper51.com
6.2.5 使用like关键字... 12 paper51.com 6.2.6 避免使用having子句... 13 copyright paper51.com
6.2.7 使用存储过程... 13 http://www.paper51.com 结 语... 13 http://www.paper51.com 参考文献... 14 内容来自www.paper51.com
致 谢... 15 copyright paper51.com 引言 http://www.paper51.com
SQL(StructuredQuery Language)结构化查询语言,它是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。 copyright paper51.com
随着计算机网络的发展,基于计算机网络和数据库技术的信息管理系统、应用系统更是得到了突飞猛进的发展。SQL作为数据库操作的一门重要语言,随着数据库技术的迅猛发展它也得到了广泛的应用。由于SQL语言比较简单,易于掌握,可以用于所有用户的数据库活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其它类型的终端用户,而且所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个,可移植性非常强,因此它深受人们的青睐。 http://www.paper51.com 在系统开发的过程中,SQL查询语句编写的优劣会直接影响到整个系统的响应速度,因此,在编写SQL查询语句时就需要运用到一些方法和技巧来得到简单和准确的SQL查询语句。 paper51.com 1 SQL概述及特点 内容来自www.paper51.com 1.1 SQL概述 内容来自www.paper51.com 目前,SQL已成为最流行的关系查询语言。SQL成型不是一蹴而就的,它和其它语言一样都是通过很多专业人员在长时间里不断改进而得以成熟的。从1974年,DonaldClamberlin和其他人合作在IBM的研究所定义了结构化英语查询语言开始,SQL就在很多专业人员的不断努力下慢慢成为了现在操作数据库的主流语言。 paper51.com 1.2 SQL语言的特点 内容来自论文无忧网 www.paper51.com l SQL语言提供有定义表、录入数据、查询、更新、维护、建立数据库、数据库重构、数据库安全控制等一系列操作功能,为数据库应用系统开发提供了良好环境。 copyright paper51.com
l SQL语言中,存取路径的选择及SQL语句的操作过程均由系统自动完成,为用户减轻了负担,提高了数据独立性。 内容来自www.paper51.com l SQL语言采用集合操作方式,不仅查找结果可以是记录的集合,而且一次插入、删除、更新操作的对象也可以是记录的集合。 paper51.com l 语言简洁、易学易用。 内容来自www.paper51.com 2 数据定义语句 内容来自www.paper51.com 在系统的开发当中,建立后台数据库最重要的就是定义基本表了。在建立数据库时准确的定义出该数据库所需的基本表,这会使我们能够更明确、更简洁的对数据库进行开发,然后得到我们想要的数据库。 copyright paper51.com
在SQL中使用createtable关键字来定义基本表,使用alter table关键字来修改基本表,使用drop table关键字来删除基本表。如: copyright paper51.com create table class ( copyright paper51.com
class_id char(6) primary key, copyright paper51.com dept_id char(4) not null, coll_id char(2), 内容来自www.paper51.com
class_name varchar(6) not null, copyright paper51.com constraint class_fk1 foreign key(dept_id) referencesdept(dept_id), copyright paper51.com constraint class_fk2 foreign key(coll_id) referencescollege(coll_id)); http://www.paper51.com 语句1 paper51.com 在语句1中建立了一个名为class的表,其中定义了主键class_id,定义了class表中的外键dept_id(foreign key)。 内容来自www.paper51.com
其中“alter table class add(class_timedate);”这句 SQL语句的作用是向class表中增加class_time列。而“drop table class;”这句SQL语句则是删除class这个表。 内容来自www.paper51.com 以考勤系统为例,在考勤系统中建立的基本表有:class、college、course、courseinfo、dept、grade、student、user_stu、user_stum、user_teacher、user_th等十一个基本表。如图2.1: 内容来自论文无忧网 www.paper51.com 图2.1 paper51.com 在很多数据库中,为数据库中的表建立索引能够使数据库的查询速度更快,它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。虽然在表中建立索引能够加快我们对数据库查询速度,但是不是说建立索引就一定是好的,在有些情况下不建立索引要比建立索引要好。就如考勤系统,由于考勤系统数据库中的数据更新过快,所以考勤系统的数据库不适合建立索引。 http://www.paper51.com |