友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
喜书网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

SQL 21日自学通(V3.0)(PDF格式)-第123章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






           FROM ORDERS 



           WHERE NAME ='JACKS BIKE') 



         NAME                  ORDEREDON 



         TRUE WHEEL           15…MAY…1996 



         TRUE WHEEL           19…MAY…1996 



         TRUE WHEEL           2…SEP…1996 



         TRUE WHEEL           30…JUN…1996 



         LE SHOPPE            17…JAN…1996 



         LE SHOPPE            1…JUN…1996 



第八天        操作数据 



问题答案 



    9  下边的语句有什么错误 



    DELETE COLLECTION 



       如果你想删除 COLLECZTION 表中的所有记录             你必需使用下边的语法 



    DELETE FROM COLLECTION; 



                                                                      546 


…………………………………………………………Page 547……………………………………………………………

SQL 21  日自学通(V1。0)                                            翻译人   笨猪 



       要注意这条语句会删除表中的所有的记录  你可以使用下边的语法来有选择地删 



    除表中的记录 



    DELETE FROM COLLECTION 



    WHERE VALUE = 125 



       这条语句将会删除所有 VALUE 为 125 的记录 



    10     下边的语句有什么错误 



       INSERT INTO COLLECTION SELECT * FROM TABLE_2 



           这条语句的目的是将 TABLE_2  中的所有记录都拷贝到 COLLECTION 表中 



       这里存在的主要问题是在 INSERT          语句中使用了 INTO  关键字  在把一个表中的 



       数据拷贝到另一个表中时  你必需使用下边的语法 



       INSERT COLLECTION 



       SELECT * FROM TABLE_2; 



           同时  要记住 TABLE_2 中的数据类型和字段次序与 COLLECTION 表中的一样 



    11     下边的语句有什么错误 



    UPDATE COLLECTION (〃HONUS WAGNER CARD〃    25000; 〃FOUND IT〃) 



       这条语句把 UPDATE  与 INSERT     弄混了  如果想更新 COLLECTIONS  表中的数 



    值  你应该使用下边的语法 



       UPDATE COLLECTIONS 



       SET NAME = 〃HONUS WAGNER CARD〃; 



                   VALUE  =  25000; 



                   REMARKS  =  〃FOUND  IT〃; 



    12     如果执行下边的语句会有什么结果 



    SQL》 DELETE * FROM COLLECTION; 



    由于语法不正确  什么也不会删除            这里不需要*号 



    13     如果执行下边的语句会有什么结果 



    SQL》 DELETE FROM COLLECTION; 



    在 COLLECTION 表中的所有记录都会被删除 



    14     如果执行下边的语句会有什么结果 



    SQL》 UPDATE COLLECTION SET WORTH = 555 



    SET REMARKS = 'UP FROM 525'; 



                                                                     547 


…………………………………………………………Page 548……………………………………………………………

SQL 21  日自学通(V1。0)                               翻译人  笨猪 



   在 COLLECTION 表中的所有 WORTH 现在都变成了 555  而且所有的 REMARKS  都 



变成了 UP FROM 525 这可不是一件好事 



   15    下边的语句是否会工作 



   SQL》 INSERT INTO COLLECTION SET VALUES = 900 WHERE ITEM = 'STRING' 



   不会工作  INSERT  与 SET 不可能在一起工作 



   16    下边的语句是否会工作 



   SQL》 UPDATE COLLECTION SET VALUES = 900 WHERE ITEM = 'STRING' 



   可以工作  语法完全正确 



练习答案 



3     试着向一个表中插入一个不正确的数据类型          看一下出错信息     然后再插入一个 



  正确的数据类型 



   无论你使用何种类型的解释器       你都会收到一个所插入数据的类型与表中对应列的数 



据类型不匹配的错误信息 



4     试着使用你的数据库系统将某个表导出为其他库格式            然后再把它导入  熟悉一 



   下你的数据库系统的导入与导出操作  并试着用其它数据库操作导出文件 



   对于确切的导入和导出数据的语法请参见你的文档           如果你重复导入的话你可以想删 



除导入表中的所有数据      在真正进行数据操作之前你应该先熟悉一下导入导出命令             如果 



在你的表中存在唯一约束列那么你的导入操作可能会失败  你将会收到大量的关于唯一约 



束限制的错误 



第九天      创建和操作表 



问题答案 



   9  ALTER DATABASE 语句经常用在修改已有表的结构上  对不对 



   不对  大多数数据系统中没有 ALTER  DATABASE 命令    修改已有表的结构应该用 



   ALTER TABLE 命令 



                                                      548 


…………………………………………………………Page 549……………………………………………………………

SQL 21  日自学通(V1。0)                                              翻译人    笨猪 



    10     DROP TABLE 语句与 DELETE FROM  的作用是相同的  对不对 



    不对  这两个命令并不等价  DROP  TABLE 将会把表的记录及结构从数据库中全部删 



    除  而 DELETE  FROM  则只是将表中的记录全部删除  表的结构在数据 



    库中依然存在 



    11     可以使用 CREATE TABLE 命令向数据库中加入一个新表                 对不对      对 



    12     为什么下边的语句是错误的 



          INPUT 



                   CREATE TABLE new_table ( 



                   ID NUMBER 



                   FIELD1 char(40) 



                   FIELD2 char(80) 



                   ID char(40) 



           该语句存在着两个问题  首先是 ID             的命句在表中重复了  而它们的数据类 



        型并不同     字段名重复使用是非法的  其次是在语句的末尾没有对应的圆括号 



        正确的语句应该如下 



        INPUT 



                   CREATE TABLE new_table ( 



                   ID NUMBER; 



                   FIELD1 char(40); 



                   FIELD2 char(80)); 



    13     为什么下边的语句是错误的 



          INPUT 



                   ALTER DATABASE BILLS ( 



                   PANY char(80)) 



       更新字段名称和长度应该使用 ALTER  TABLE 命令               而不是 ALTER  DATABASE 



    命令 



    14     当一个表建立时  谁是它的所有者 



       它的创建人       如果你用你的 ID  登录  那么所有都是你的 ID             如果你用 SYSTEM 



    登录  那么所有都是 SYSTEM 



    15     如果字符型列的长度在不断变化              如何才能做出最佳的选择 



                                                                       549 


…………………………………………………………Page 550……………………………………………………………

SQL 21  日自学通(V1。0)                                               翻译人    笨猪 



        VARCHAR2 是最好的选择  它可以允许存储在其中的字符串的长度变化 



    16     表名是否可以重复 



        可以   只要所有者或计划不同就行 



练习答案 



    4   用你喜欢的格式向 BILLS          数据库中加入两个表             名字分别叫 BANK         和 



       ACCOUNT_TYPE     BANK 表中应该包含有 BANK_ACCOUNT           表中 BANK  字段 



       的 信 息     ACCOUNT_TYPE    表 中 也 应 该 包 含 有  BANK_ACCOUNT         表 中 



       ACCOUNT_TYPE 字段的信息  试着尽可以地减少数据的数量 



    你应该使用 CREAETE TABLE 命令来创建表            可能的语句形式如下 



SQL》 CREATE TABLE BANK 



2        (  ACCOUNT_ID NUMBER(30)              NOT NULL; 



            BANK_NAME  VARCHAR2(30)            NOT NULL; 



            ST_ADDRESS VARCHAR2(30)            NOT NULL; 



            CITY       VARCHAR2(15)            NOT NULL; 



            STATE      CHAR(2)                 NOT NULL; 



            ZIP        NUMBER(5)               NOT NULL 



SQL》 CREATE TABLE ACCOUNT_TYPE 



          (  ACCOUNT_ID NUMBER(30)             NOT NULL; 



            SAVINGS    CHAR(30); 



              CHECKING CHAR(30); 



    5   使用你已经创建的五个表           BILLS   BANK_ACCOUNTS     PANY     BANK 



       ACCOUNT_TYPE     改为表的结构以用整数型字段作为关键字以取代字符型字段 



       作为关键字 



       SQL》 ALTER TABLE BILLS DROP PRIMARY KEY; 



       SQL》 ALTER TABLE BILLS ADD (PRIMARY KEY (ACCOUNT_ID)); 



       SQL》 ALTER TABLE PANY ADD (PRIMARY KEY (ACCOUNT_ID)); 



    6   使用你所知道的 SQL 的联接知识 见第 6 天 表的联接                 写几个查询来联接 BILLS 



       数据库中的几个表 



                                                                        550 


…………………………………………………………Page 551……………………………………………………………

SQL 21  日自学通(V1。0)                                     翻译人  笨猪 



   由于在上一个练习中我们已经修改了表的结构使其关键字段为 ACCOUNT_ID                 列  所 



以的表都可以根据该列进行联接  你可以�
返回目录 上一页 下一页 回到顶部 赞(0) 踩(0)
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!