沈阳农业大学vf课件第五章.ppt_第1页
沈阳农业大学vf课件第五章.ppt_第2页
沈阳农业大学vf课件第五章.ppt_第3页
沈阳农业大学vf课件第五章.ppt_第4页
沈阳农业大学vf课件第五章.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章,结构化查询语言 SQL,SQL(Structured Query Language- 结构化查询语言),是一种专门操作数据库的语言。,5.1 数据定义,5.3 数据操纵,5.2 数据查询,Visual FoxPro 6.0数据库与程序设计,5.1.1 表的定义,5.1.2 表结构的修改,5.1.3 表的删除,格式:,Create table (字段名1 类型(长度),.),命令为: CREA TABL XS (学号 C(6), 姓名 C(6), 年龄 N(2) ,出生日期 D(8),贷款否 L(1) ),例1 :创建一个数据表,其表名为 “XS”,字段定义为: 学号(C,6) 姓名(C,6) 年龄(N,2),出生日期(D,8),贷款否(L,1),用SQL语句修改表结构,无须用Use 命令打开表。 5.2.2.1 修改表的类型或长度. 格式: Alter table alter 类型(长度) 例2:将XS表的学号字段改为数值型,2个长度,姓名长度改为 8。 命令为: alter table xs alter 学号 N (2) ALTER 姓名 C(8),格式: Alter table drop drop .,5.1.2.2 删除字段,例3:删除XS表的年龄和贷款否两个字段。 命令: alter table xs drop 年龄 drop 贷款否,格式为: Alter table add 类型(长度) add 类型(长度) 例4 为XS表增加年龄(N,2)和贷款否(L,1) 命令: alter table xs add 年龄 N(2) add 贷款否 L(1),5.1.2.3 增加字段,格式为: DROP TABLE 表名,例5 删除XS表。 命令: drop table xs,5.2.2基本查询,5.2.5带特殊运算符的条件查询,5.2.6多表查询,5.2.3排序查询,5.2.4计算与分组查询,5.2.7连接查询,5.2.9查询输出,5.2.8嵌套查询,格式为: SELE 字段名列表 FROM 数据表名 WHERE 条件 例1:查询学生表中所有男生的学号,姓名,出生日期。 命令: SELE 学号, 姓名, 出生日期 FROM 学生 WHERE 性别=“男“ 例2:从课程.DBF表中,查询所有课程的信息。 命令: SELE * FROM 课程,答案: Sele 编号,姓名,工资现状 from rcda where 工资现状=1800,rcda表,课堂练习: 查询出工资大于等于1800的人才的编号,姓名和工资情况。,Sele from where order by (asc)(desc) 例3:查询学生表中男学生的学号,姓名,出生日期,按出生日期降序排序. 命令 : sele 学号,姓名,出生日期 from 学生 where 性别=“男” order by 出生日期 desc,格式: GROUP BY 分组字段 例4:查询teacher表各教研室月收入的和。 SELE 教研室, SUM(月收入) AS 月收入和 FROM TEACHER GROUP BY 教研室,Select 中进行查询计算的函数: Count(字段名) 计算记录个数 Sum(字段名) 求字段名所指定字段值的总和 Avg(字段名) 求字段名所指定的字段值的平均值 Max(字段名) 求字段名所指定的字段的最大值 Min(字段名) 求字段名所指定的字段的最小值,课堂练习: 查询出男、女人才的平均工资。 答案: Sele 性别,avg(工资现状) as 平均工资 from rcda group by 性别,rcda表,例5:查询学生表中计算机系和管理系学生的学号,姓名,系别和贷款情况. 命令: SELE 学号,姓名,系别,贷款否 FROM 学生 WHERE 系别 IN (“计算机“,“管理“),例6:在成绩表中查询成绩良好(90100)的学生所学课程信息。 命令: SELE 学号,课程号,成绩 FROM 成绩 WHERE 成绩 BETWEEN 90 AND 100 例7:查询所有非计算机系的学生的学号,姓名,系别,出生日期。 命令: SELE 学号,姓名,系别,出生日期 FROM 学生 WHERE 系别!= “计算机” != # ,例8从“学生信息”表和“成绩信息”表中查询学号、姓名、性别、课程名、成绩字段的信息。 SELE 学生信息.学号,姓名,性别,课程名,成绩 from 学生信息,成绩信息 where 学生信息.学号=成绩信息.学号,5.2.6多表查询,SELE a.学号,姓名,性别,课程名,成绩 from 学生信息 a,成绩信息 b where a.学号=b.学号,例8同上例,5.2.7联接查询,利用联接查询 SELE 学生信息.学号,姓名,性别,课程名,成绩 from 学生信息 inner join 成绩信息 on 学生信息.学号=成绩信息.学号 inner /left /right /full,例8查询家在“辽宁省”学生的学号、姓名和总分。 (用到的表是:xsda、xscj、txl),5.2.8嵌套查询,sele xsda.学号,姓名,总分 from xsda inner join xscj on xsda.学号=xscj.学号 where xsda.学号 in (sele 学号 from txl where left(地址,4)=“辽宁“),在命令尾部 用 into table 表名 可将查询结果输出到新的表中.,5.2.9查询输出,例9查询“学生信息”表中在1986年以后(包括1986年)出生的学号、姓名和出生日期,将查询结果输出到表xs.dbf中。,sele 学号,姓名,出生日期 from 学生信息 where year(出生日期)=1986 into table xs,5.3.1 插入记录,5.3.3 逻辑删除记录,5.3.2 更新记录,在表的尾部添加一个记录 格式为: Insert into (,字段名2.) values ( ,) 例6向“教师”表插入一条新的记录,编号为101013,姓名为晓云,性别为女,年龄为23。 INSE INTO 教师 (编号,姓名,性别,年龄) VALUE (“101010”,“晓云“,“女“,23),5.3.1插入记录,5.3.2 更新记录 格式为: Update set = ,=. where 例7将xs

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论