书签 分享 收藏 举报 版权申诉 / 73
上传文档赚钱

类型《数据库应用基础与实训教程-Visual-FoxPro》第6章:SQL语句课件.ppt

  • 上传人(卖家):ziliao2023
  • 文档编号:6136520
  • 上传时间:2023-06-02
  • 格式:PPT
  • 页数:73
  • 大小:859.01KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《数据库应用基础与实训教程-Visual-FoxPro》第6章:SQL语句课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据库应用基础与实训教程Visual-FoxPro 数据库 应用 基础 教程 Visual FoxPro SQL 语句 课件
    资源描述:

    1、http:/ Query Language)的缩写,其功能包括数据查询、数据操纵、数据定义和数据控制四个部分。SQL语言拥有使用方式灵活、语句简洁、功能齐全等特点,深受用户欢迎,已成为目前应用最广泛的关系数据库语言,几乎所有的关系型数据库型系统都支持它。Visual FoxPro并不支持所有的SQL语句,它只支持其中的子集。本章将介绍常用的SQL语句使用,主要包括数据查询、数据定义和数据操作功能。要求熟练掌握这些命令的应用。http:/ 数据库的操作语句n6.2 表的创建与删除语句n6.3 SQL的数据操作功能n6.4 SQL的数据查询功能 n6.5 本章实训 n6.6 本章习题http:/

    2、数据库的创建n6.1.2 数据库的删除http:/ DATABASE DatabaseName【命令说明】DatabaseName指的是所要创建的数据名。具体应用见【例6-1】。http:/ DATABASE CJGL&在当前路径下创建了名为CJGL的数据库。MODIFY DATABASE&打开名为CJGL的数据库设计器,如图6.1所示。图6.1http:/ DATABASE DatabaseName【命令说明】DatabaseName指的是所要删除的数据名。但在删除数据库之前,必须先关闭该数据库。具体应用见【例6-2】http:/ DATABASE&关闭例6-1所建立的数据库。DELETE

    3、DATABASE CJGL&删除已经关闭的数据库,弹出如图6.2所示,单击【是】按钮就删除了该数据库。图6.2http:/ 表的创建n6.2.2 表结构的修改n6.2.3 表的删除n6.2.4 将表移出数据库n6.2.5 将自由表添加到数据库http:/ TABLE|DBF TableName FREE(FieldName1 FieldType(nFieldWidth,nPrecision)NULL|NOT NULLCKECK lExpression1 ERROR cMessagetext1DEFAULT eExpression1PRIMARY KEY|UNIQUE,FieldName2【命令

    4、说明】【命令说明】(1)TableName指的是所要创建的表名。指的是所要创建的表名。(2)FREE指的是要创建一个自由表。指的是要创建一个自由表。(3)FieldName1指的是新建表的字段名。指的是新建表的字段名。http:/ NULL指的字段中是否允许保存指的字段中是否允许保存空值。空值。(8)C K E C K l E x p re s s i o n 1 E R R O R cMessagetext1指的是验证字段的值是否符合指定的指的是验证字段的值是否符合指定的表达式,不符合可以有错误提示信息。表达式,不符合可以有错误提示信息。(9)DEFAULT eExpression1指的是给

    5、指定字段指的是给指定字段设置默认值。设置默认值。(10)PRIMARY KEY|UNIQUE指的是给指定字指的是给指定字段设置主索引或唯一索引。段设置主索引或唯一索引。http:/ DATABASE OPEN DATABASE 成绩管理成绩管理CREATE TABLE XSCREATE TABLE XS(XH C(2),XM C(10),XB C(2),CSRQ D,SFTY(XH C(2),XM C(10),XB C(2),CSRQ D,SFTY L,XBBH C(2)L,XBBH C(2)&在成绩管理数据库中建立表在成绩管理数据库中建立表XSXS,如图,如图6.36.3所示。所示。图图6.

    6、36.3http:/ TABLE XS1(XH C(2)NOT NULL PRIMARY KEY,XM C(10),XB C(2)CHECK XB=”男男”OR XB=”女女”,CSRQ D,SFTY L DEFAULT.T.,XBBH C(2)然后查看表然后查看表XS1的结构,如图的结构,如图6.4所示。所示。图图6.4http:/ TABLE TabelName1ALTER TABLE TabelName1ADD COLUNMN FieldName1 FieldType ADD COLUNMN FieldName1 FieldType(nFieldWidth,nPrecision(nFie

    7、ldWidth,nPrecision)NULL|NOT NULLNULL|NOT NULLCHECK lExpression1 ERROR cMessagetext1CHECK lExpression1 ERROR cMessagetext1DEFAULT eExpression1DEFAULT eExpression1PRIMARY KEY|UNIQUEPRIMARY KEY|UNIQUE【命令说明】这里的参数的含义和创建表的含义一致,参照执行。http:/ TABLE XSALTER TABLE XSADD NL N(2)CHECK NL0 ERROR”ADD NL N(2)CHECK N

    8、L0 ERROR”年龄必须大于年龄必须大于零零”命令执行后进入表命令执行后进入表XSXS的表设计器,如图的表设计器,如图6.56.5所示。所示。图图6.56.5http:/ TABLE TabelName1ALTER TABLE TabelName1ALTER COLUNMN FieldName1 FieldType ALTER COLUNMN FieldName1 FieldType(nFieldWidth,nPrecision(nFieldWidth,nPrecision)NULL|NOT NULLNULL|NOT NULL S E T C H E C K l E x p r e s s

    9、i o n 1 E R R O R S E T C H E C K l E x p r e s s i o n 1 E R R O R cMessagetext1cMessagetext1SET DEFAULT eExpression1SET DEFAULT eExpression1DROP CHECK DROP DEFAULTDROP CHECK DROP DEFAULTRENAME COLUMN FieldName1 TO FieldName2RENAME COLUMN FieldName1 TO FieldName2http:/ 1)SET CHECK lExpression1 ERRO

    10、R SET CHECK lExpression1 ERROR cMessagetext1cMessagetext1指给指定字段增加规则或修改规则。指给指定字段增加规则或修改规则。(2 2)SET DEFAULT eExpression1SET DEFAULT eExpression1指给指定字段增指给指定字段增加默认值或修改默认值。加默认值或修改默认值。(3 3)DROP CHECKDROP CHECK指删除指定字段的规则。指删除指定字段的规则。(4 4)DROP DEFAULTDROP DEFAULT指删除指定字段的默认值。指删除指定字段的默认值。(5 5)RENAME COLUMN Fie

    11、ldName1 TO FieldName2RENAME COLUMN FieldName1 TO FieldName2指给字段指给字段FieldName1FieldName1重新命名为重新命名为FieldName2FieldName2。其他的参数的含义和创建表的含义一致,参照执其他的参数的含义和创建表的含义一致,参照执行。行。http:/ TABLE XSATLER TABLE XSALTER NL N(2)SET CHECK NL16 ERROR”ALTER NL N(2)SET CHECK NL16 ERROR”年龄年龄必须大于必须大于1616周岁!周岁!”【例【例6-76-7】把】把SP

    12、1SP1表中表中NLNL字段更改为字段更改为RXNLRXNL。命令如。命令如下:下:ATLER TABLE XSATLER TABLE XSRENAME COLUMN NL TO RXNLRENAME COLUMN NL TO RXNL【例【例6-86-8】删除】删除XSXS表表RXNLRXNL字段的有效性规则。命令字段的有效性规则。命令如下:如下:ATLER TABLE XSATLER TABLE XSALTER RXNL DROP CHECKALTER RXNL DROP CHECKhttp:/ TABLE TableName【命令说明】【命令说明】该命令是直接从磁盘上删除指定的表名的该命

    13、令是直接从磁盘上删除指定的表名的DBF文文件。但该表如果是数据库表,就必须先打开该表所在件。但该表如果是数据库表,就必须先打开该表所在的数据库,然后使用该命令删除表,否则数据库中将的数据库,然后使用该命令删除表,否则数据库中将还保留有该表的信息,会有错误提示。还保留有该表的信息,会有错误提示。【例【例6-10】删除表】删除表SP1。DROP TABLE SP1http:/ TABLE TableNameREMOVE TABLE TableName|?DELETEDELETE【命令说明】【命令说明】(1 1)该命令是把指定数据库表移出数据库。)该命令是把指定数据库表移出数据库。(2 2)?指调出

    14、【移去】对话框,从中选择要移去)?指调出【移去】对话框,从中选择要移去的表。的表。(3 3)DELETEDELETE指把指定表移出后,并从磁盘上删除。指把指定表移出后,并从磁盘上删除。【例【例6-116-11】将表】将表XSXS移出数据库移出数据库CJGLCJGL,但不删除。,但不删除。命令和操作如下:命令和操作如下:http:/ DATABASE CJGLMODIFY DATABASEREMOVE TABLE XS&该命令执行后出现如图该命令执行后出现如图6.6所示所示的对话框。的对话框。在图在图6.6中单击【是】按钮,就把表中单击【是】按钮,就把表XS移出数据库移出数据库CJGL,但并没有

    15、删除表但并没有删除表XS,数据库设计器如图,数据库设计器如图6.7所示。所示。图图6.6图图6.7http:/ TABLE TableName|?NAME LongTableName【命令说明】【命令说明】(1)该命令是把指定自由表添加到指定的数据库)该命令是把指定自由表添加到指定的数据库中,成为数据库表。中,成为数据库表。(2)?:指调出【打开】对话框,从中选择要添)?:指调出【打开】对话框,从中选择要添加的自由表。加的自由表。(3)NAME LongTableName:指为添加的数据:指为添加的数据库表指定一个长名。库表指定一个长名。http:/ DATABASE CJGLMODIFY D

    16、ATABASEADD TABLE XS命令执行后数据库设计器如图命令执行后数据库设计器如图6.8所示。所示。图图6.8http:/ 数据的插入n6.3.2 数据的更新n6.3.3 数据的删除SQLSQL的数据操作功能只要是对已有表中数据的操的数据操作功能只要是对已有表中数据的操作,主要包括记录的插入、更新和删除三大方面的作,主要包括记录的插入、更新和删除三大方面的操作。操作。http:/ FoxPro支持两种支持两种SQL数据的插入格式,第一种是数据的插入格式,第一种是标准格式,第二种是特殊格式。一般使用第一种格式。标准格式,第二种是特殊格式。一般使用第一种格式。【第一种命令格式】【第一种命令

    17、格式】INSERT INTO TableName(FieldName1,FieldName2,)VALUES(eExpression1,eExpression2,)【命令说明】【命令说明】(1)TableName指所要插入记录的表名。指所要插入记录的表名。(2)FieldName1,FieldName2,指插入记录所要用到的指插入记录所要用到的字段。该参数可以不选,默认为对所有字段都需要插入值。字段。该参数可以不选,默认为对所有字段都需要插入值。(3)eExpression1,eExpression2,指插入记录对应字段指插入记录对应字段的值。的值。(4)所插入字段的值必须和该对应的字段的数据

    18、要求一致,)所插入字段的值必须和该对应的字段的数据要求一致,包括数据类型、数据长度的范围、数据小数位数。包括数据类型、数据长度的范围、数据小数位数。(5)所插入的记录字段的值必须和字段的个数保持一致,)所插入的记录字段的值必须和字段的个数保持一致,不能多也不能少,否则会出错。不能多也不能少,否则会出错。http:/ INTO 课程课程(课程号课程号,课程名称课程名称,学分学分)VALUES(C6,桌面程序设计桌面程序设计,5)由于该命令是对表中所有字段都插入一个值,还可以使由于该命令是对表中所有字段都插入一个值,还可以使用下面命令进行操作:用下面命令进行操作:INSERT INTO 课程课程V

    19、ALUES(C6,桌面程序设计桌面程序设计,5)命令执行结果如图命令执行结果如图6.10所示。所示。图图6.10http:/ INTO TableNameINSERT INTO TableNameFROM ARRAY AraayNameFROM ARRAY AraayName【命令说明】【命令说明】(1 1)该命令是从指定的数据组中插入数据成为记)该命令是从指定的数据组中插入数据成为记录。录。(2 2)AraayNameAraayName指数组名。该数组必须先定义,指数组名。该数组必须先定义,而且各元素的赋值符合指定表相应字段的定义,这样而且各元素的赋值符合指定表相应字段的定义,这样才可以使用

    20、数组插入记录。才可以使用数组插入记录。http:/ X(3)&定义一个一维数组定义一个一维数组X,有,有3个元素。个元素。X(1)=C7X(2)=专业英语专业英语X(3)=3INSERT INTO 课程课程 FROM ARRAY X命令执行结果如图命令执行结果如图6.11所示。所示。图图6.11http:/ TableName SET ColumnName1=eExpression1,ColumnName2=eExpression2)WHERE Conditon【命令说明】【命令说明】(1)ColumnName1、ColumnName2指对所要修改的指对所要修改的字段名。字段名。(2)eExp

    21、ression1、eExpression2指对所要修改字段指对所要修改字段更新的数据值。可以是常量和表达式。更新的数据值。可以是常量和表达式。(3)WHERE Conditon 指对满足条件的数据进行更新。指对满足条件的数据进行更新。(4)所更新字段和新的值必须保持一致。)所更新字段和新的值必须保持一致。http:/ 课程课程;SET 课程名称课程名称=思想道德思想道德,学分学分=4;WHERE 课程名称课程名称=政治政治命令执行结果如图命令执行结果如图6.12所示。所示。图图6.12http:/ FROM TableNameWHERE Conditon【命令说明】【命令说明】(1)该命令是对

    22、指定表的记录进行逻辑删除,)该命令是对指定表的记录进行逻辑删除,需要物理删除还要借助需要物理删除还要借助PACK命令。命令。(2)WHERE Conditon 指对满足条件的数指对满足条件的数据进行删除。据进行删除。http:/ FROM 课程课程WHERE 课程号课程号=C6命令执行结果如图命令执行结果如图6.13所示。图中的黑色方块表示作了删所示。图中的黑色方块表示作了删除标记,但记录并没有真正删除,还保留在表中。如果要去掉除标记,但记录并没有真正删除,还保留在表中。如果要去掉删除标记和物理删除该条记录,可以参见第三章所讲解的表数删除标记和物理删除该条记录,可以参见第三章所讲解的表数据删除

    23、方法。据删除方法。图图6.13http:/ 数据库的简单查询n6.4.2 数据库的复杂查询 SQL的数据查询功能是数据库中最常用、的数据查询功能是数据库中最常用、最重要的数据操作,它可以在指定的表中查最重要的数据操作,它可以在指定的表中查询满足条件的数据,该命令应用广泛,但格询满足条件的数据,该命令应用广泛,但格式比较复杂。式比较复杂。http:/ ALL|DISTINCE TOP nExpr PERCENTAlias.Select_Item AS Column_Name,Alias.Select_Item AS Column_NameFROM FORCE DatabaseName!Table

    24、 AS Local_AliasINNER|LEFT OUTER|RIGHT OUTER|FULL OUTER JOINDatabaseName!Table AS Local_AliasON JoinCondition INTO Destination|TO FILE FileName ADDITIVE|TO PRINTER PROMPT|TO SCREENPREFERENCE PreferenceNameNOCONSOLEPLAINNOWAITWHERE JoinCondition AND JoinCondition.AND|OR FilterCondition AND|OR FilterCo

    25、ndition.GROUP BY GroupColumn,GroupColumn.HAVING FilterConditionUNION ALL SELECT命令命令ORDER BY Order_Item ASC|DESC,Order_Item ASC|DESC.由于该命令格式比较复杂,下面将分别在各种应用中进行由于该命令格式比较复杂,下面将分别在各种应用中进行说明和介绍:说明和介绍:http:/ n条件查询条件查询 n简单计算查询简单计算查询n分组查询分组查询 n查询结果排序查询结果排序n查询结果保存查询结果保存http:/ ALL|DISTINCE Alias.Select_Item1 A

    26、lias.Select_Item1 AS Column1_Name,Alias.Select_Item2 AS AS Column1_Name,Alias.Select_Item2 AS Column2_NameColumn2_NameFROM DatabaseName!Table AS Local_Alias【命令说明】【命令说明】(1)ALL|DISTINCE:指查询表中所有数据或去掉重:指查询表中所有数据或去掉重复的记录。复的记录。(2)Alias.Select_Item1 AS Column1_Name:从指:从指定的表中(可以使用别名)引用相关的字段或着表达式,定的表中(可以使用别名

    27、)引用相关的字段或着表达式,AS Column1_Name对查询结果的列名重新命名。对查询结果的列名重新命名。(3)FROM DatabaseName!Table AS Local_Alias:指从指定的表(可以是数据库中的表)查询数据,这里可以指从指定的表(可以是数据库中的表)查询数据,这里可以给表指定一个别名,在所有字句中都可以应用。给表指定一个别名,在所有字句中都可以应用。http:/ 学生学生&这里这里*代表所有字段代表所有字段 结果如图结果如图6.146.14所示。所示。【例【例6-186-18】查询学生表的学号和姓名。命令如下:】查询学生表的学号和姓名。命令如下:SELECT SE

    28、LECT 学号学号 AS AS 学生的编号学生的编号,姓名姓名 AS XM FROM AS XM FROM 学生学生结果如图结果如图6.156.15所示。所示。图6.14图6.15http:/ DISTINCT SELECT DISTINCT 学号学号 FROM FROM 选课选课结果如图结果如图6.166.16所示。所示。图6.16http:/ FROM WHERE Condition【命令说明】【命令说明】该命令是查询满足条件的数据,该命令是查询满足条件的数据,Condition为条件表达式。为条件表达式。具体应用如下:具体应用如下:(1)使用关系和逻辑表达式的条件查询。)使用关系和逻辑表

    29、达式的条件查询。【例【例6-20】查询成绩不及格的情况。命令如下:】查询成绩不及格的情况。命令如下:SELECT*FROM 选课选课 WHERE 成绩成绩60结果如图结果如图6.17所示。所示。图图6.17http:/ 用 范 围 查 询使 用 范 围 查 询 B E T W E E NB E T W E E N A N DA N D 或 者或 者 N O T N O T BETWEEN BETWEEN ANDAND。【例【例6-216-21】查询成绩在】查询成绩在8080到到100100之间的情况。命令如下:之间的情况。命令如下:SELECT*FROM 选课选课 WHERE 成绩成绩 BET

    30、WEEN 80 AND 100结果如图结果如图6.186.18所示。所示。图图6.186.18http:/ 3)使用字符匹配查询)使用字符匹配查询LIKELIKE或或NOT LIKE NOT LIKE。%:代表任意长度的字符串。:代表任意长度的字符串。_ _:代表任意单个字符。:代表任意单个字符。【例【例6-226-22】查询所以姓王的学生情况。命令如下:】查询所以姓王的学生情况。命令如下:SELECT*FROM 学生学生 WHERE 姓名姓名 LIKE 王王%结果如图结果如图6.196.19所示。所示。图图6.196.19http:/ 4)空值查询)空值查询IS NULLIS NULL或或I

    31、S NOT NULLIS NOT NULL。【例【例6-236-23】查询学生表系部编号不为】查询学生表系部编号不为NULLNULL的情况。命令如的情况。命令如下:下:SELECT SELECT*FROM FROM 学生学生 WHERE WHERE 系部编号系部编号 IS NOT NULLIS NOT NULL结果如图结果如图6.206.20所示。所示。图图6.206.20http:/ 5)确定集合查询)确定集合查询ININ或或NOT INNOT IN。【例【例6-246-24】查询系部编号为】查询系部编号为”2”2”或或”3”3”的学生情况。命的学生情况。命令如下:令如下:SELECT SE

    32、LECT*FROM FROM 学生学生 WHERE WHERE 系部编号系部编号 IN(2,3)IN(2,3)结果如图结果如图6.216.21所示。所示。图图6.216.21http:/ WHERE Condition【命令说明】【命令说明】(1)SELECT短语后主要书写计算表达式和函数。短语后主要书写计算表达式和函数。(2)计算检索的函数主要有:)计算检索的函数主要有:COUNT(DISTINCT|ALL)*)统计记录个数。统计记录个数。SUM(DISTINCT|ALL)计算一数值列计算一数值列的总和。的总和。AVG(DISTINCT|ALL)计算一数值列计算一数值列的平均值。的平均值。M

    33、AX(DISTINCT|ALL)求一列的最大求一列的最大值。值。MIN(DISTINCT|ALL)求一列的最小求一列的最小值。值。http:/ COUNT(*)AS 学生人数学生人数 FROM 学生学生结果如图结果如图6.226.22所示。所示。【例【例6-266-26】计算选课表的成绩总和、平均分、最大分、最小】计算选课表的成绩总和、平均分、最大分、最小分。命令如下:分。命令如下:SELECT SUM(成绩成绩)AS 总和总和,AVG(成绩成绩)AS 平均平均分分,MAX(成绩成绩)AS最大分最大分,MIN(成绩成绩)AS 最小分最小分 FROM 选课选课结果如图结果如图6.236.23所示

    34、。所示。图图6.226.22图图6.236.23http:/ FROM.GROUP BY GroupColumn,GroupColumn.HAVING FilterCondition【命令说明】【命令说明】(1)GroupColumn是指分组的标志列。是指分组的标志列。(2)HAVING FilterCondition是指限制分组的条件。是指限制分组的条件。【例【例6-27】分别统计学生表中的男女生人数。命令如下:分别统计学生表中的男女生人数。命令如下:SELECT 性别性别,COUNT(*)AS 人数人数 FROM 学生学生GROUP BY 性别性别结果如图结果如图6.24所示。所示。htt

    35、p:/ 学号学号,COUNT(课程号课程号)AS 课程门数课程门数 FROM 选课选课;WHERE 成绩成绩=70;GROUP BY 学号学号 HAVING COUNT(*)=2结果如图结果如图6.256.25所示。所示。图图6.246.24图图6.256.25http:/ TOP nExpr PERCENT FROM.ORDER BY Order_Item ASC|DESC,Order_Item ASC|DESC.【命令说明】【命令说明】(1)Order_Item:指的选定的对查询结果排序的列。:指的选定的对查询结果排序的列。(2)ASC|DESC:指的是排序的顺序。:指的是排序的顺序。AS

    36、C指升序,默指升序,默认为升序。认为升序。DESC指的是降序。指的是降序。(3)TOP nExpr PERCENT:指查询结果显示特定数目:指查询结果显示特定数目的记录。的记录。TOP nExpr表示现在最前面的表示现在最前面的N条记录。条记录。TOP nExpr PERCENT表示显示查询结果记录数目的百分比。这里必须和表示显示查询结果记录数目的百分比。这里必须和排序结合使用,不能单独使用。排序结合使用,不能单独使用。http:/ 学生学生;ORDER BY 出生日期出生日期 DESC&结果如图结果如图6.266.26所示。所示。【例【例6-306-30】查询课程号为】查询课程号为“C1”C

    37、1”,成绩最高的前三名情况。,成绩最高的前三名情况。命令如下:命令如下:SELECT*TOP 3 FROM 选课选课 WHERE 课程号课程号=C1;ORDER BY 成绩成绩 DESC&结果如图结果如图6.276.27所示。所示。图图6.266.26图图6.276.27http:/ FROM.INTO TABLE|CURSOR Destination|TO FILE FileName ADDITIVE|TO PRINTER PROMPT|TO SCREEN【命令说明】【命令说明】(1)INTO TABLE|CURSOR Destination:指查询结果:指查询结果保存到新表。将结果永久保存

    38、在表中则使用保存到新表。将结果永久保存在表中则使用INTO TABLE;如;如果接查询结果保存到临时表中则使用果接查询结果保存到临时表中则使用INTO CURSOR,临时表,临时表的不永久保存,关闭后不在存在。的不永久保存,关闭后不在存在。(2)TO FILE FileName:ADDITIVE指查询结果保存指查询结果保存到文本文件。到文本文件。(3)TO PRINTER PROMPT:指查询结果输出到打印:指查询结果输出到打印机。机。(4)TO SCREEN:指查询结果到屏幕。:指查询结果到屏幕。http:/ 选课选课;WHERE 成绩成绩4)结果如图结果如图6.35所示。所示。图图6.34

    39、6.34图图6.35http:/ n重点掌握查询语句的灵活使用 http:/ 1创建数据库创建数据库TSGLTSGL,并打开。建立程序,并打开。建立程序61.61.prgprg,并输入以下命令:,并输入以下命令:create database tsglcreate database tsglopen database tsglopen database tsgl2 2在数据库在数据库TSGLTSGL中创建以下表。表的结构如下:中创建以下表。表的结构如下:TSTS(SSH C(10),SM C(30),ZZ C(6),TSDJH C(10),CBS C(10),JG SSH C(10),SM C

    40、(30),ZZ C(6),TSDJH C(10),CBS C(10),JG N(6.2)N(6.2))JYZJYZ(JSZH C(5),XM C(10),XBM C(8),BJ C(4)JSZH C(5),XM C(10),XBM C(8),BJ C(4))JYDJJYDJ(JSZH C(5),TSDJH C(6),JSRQ DJSZH C(5),TSDJH C(6),JSRQ D)建立程序建立程序62.62.prgprg,并输入以下命令:,并输入以下命令:create table ts(ssh c(2),sm c(30),zz c(6),tsdjh c(10),cbs create tabl

    41、e ts(ssh c(2),sm c(30),zz c(6),tsdjh c(10),cbs c(10),jgc(10),jg n(6.2)n(6.2)create table jyz(jszh c(5)primary key,xm c(10),xbm c(8),bjcreate table jyz(jszh c(5)primary key,xm c(10),xbm c(8),bj c(4)c(4)create table jydj(jszh c(5),tsdjh c(6),jsrqcreate table jydj(jszh c(5),tsdjh c(6),jsrq d)d)实验内容:实验内

    42、容:http:/ FoxProVisual FoxPro程序设计教程程序设计教程匡松匡松T00101T00101川大川大2929TP311.138TP311.138Visual FoxProVisual FoxPro程序设计教程程序设计教程匡松匡松T00102T00102川大川大2929TP311.138TP311.138数据库应用基础数据库应用基础周察金周察金T00201T00201高等高等20.9020.90TP311.138TP311.138SQL Server2000SQL Server2000实例教程实例教程杨学全杨学全T00301T00301电子电子2525C931.6C931.6

    43、管理信息系统管理信息系统李永平李永平C00101C00101科学科学1818表表JYZJYZ的数据如下表:的数据如下表:jszhxmxbmbj0110101101扬扬扬扬电子系电子系01-101-10120101201田田田田计算机系计算机系02-102-10120201202同同同同计算机系计算机系02-202-20110201102天天天天电子系电子系01-201-2http:/ database tsgl*给表给表TS插入数据插入数据*insert into ts values(TP311.138,Visual FoxPro程序设计程序设计教程教程,匡松匡松,T00101,川大川大,29

    44、)insert into ts values(TP311.138,Visual FoxPro程序设计程序设计教程教程,匡松匡松,T00102,川大川大,29)insert into ts values(TP311.138,数据库应用基础数据库应用基础,周察周察金金,T00201,高等高等,20.90)insert into ts values(TP311.138,SQL Server2000实例教实例教程程,杨学全杨学全,T00301,电子电子,25)insert into ts values(C931.6,管理信息系统管理信息系统,李永平李永平,C00101,科学科学,18)*代码接下页代码

    45、接下页http:/ into jyz values(01001,扬扬扬扬,电子系电子系,01-1)insert into jyz values(01201,田田田田,计算机系计算机系,02-1)insert into jyz values(01202,同同同同,计算机系计算机系,02-2)insert into jyz values(01102,天天天天,电子系电子系,01-2)*给表给表JYDJ插入数据插入数据*insert into jydj values(01201,C00201,2005-03-20)insert into jydj values(01101,T00101,2005-0

    46、3-16)insert into jydj values(01202,T00201,2005-04-21)insert into jydj values(01102,T00201,2005-03-20)insert into jydj values(01101,T00201,2005-03-16)insert into jydj values(01102,T00301,2005-03-06)insert into jydj values(01101,T00301,2005-04-16)insert into jydj values(01202,T00101,2005-03-06)insert

    47、into jydj values(01201,T00201,2005-03-20)http:/ database tsglalter table ts alter tsdjh c(6)5用户输入所要查找的书名,显示查询结果。建立程序用户输入所要查找的书名,显示查询结果。建立程序65.prg,并输入以下命令:,并输入以下命令:open database tsglaccept 请输入所要查找的书名:请输入所要查找的书名:to shumingselect*from ts where sm=shuming6查询田田所借图书的信息。建立程序查询田田所借图书的信息。建立程序66.prg,并输入以,并输入以

    48、下命令:下命令:open database tsglselect ts.*from ts,jydj,jyz where ts.tsdjh=jydj.tsdjh and jydj.jszh=jyz.jszh and xm=田田田田http:/ database tsglselect cbs,count(tsdjh)from ts group by cbs into table cbsm8查询借书在查询借书在3本以上的读者信息。建立程序本以上的读者信息。建立程序68.prg,并,并输入以下命令:输入以下命令:open database tsglselect*from ts where jyzh in;(select jyzh from jydj group by jyzh having count(tsdjh)=3)9运行程序。按顺序依次运行程序。按顺序依次61.prg、62.prg68.prg。每运。每运行一个程序注意观察其结果。行一个程序注意观察其结果。http:/ 本章习题(略)

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《数据库应用基础与实训教程-Visual-FoxPro》第6章:SQL语句课件.ppt
    链接地址:https://www.163wenku.com/p-6136520.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库