分组
4 你在使用 LOGIN。SQL 文件时有哪些限制
5 DECODE 函数与过程语言中的 LOOP 功能是等价的 对不对
6 如果你将查询重新定向到一个已经存在的文件中 你的输出将追加到这个文件 对不对
471
…………………………………………………………Page 472……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
练习
1 利用在今天开始时的 PRODUCTS 表 写一个查询选择其中的所有数据并对记录的个数
进行汇总 要生成报表并且不得使用 SET FEEDBACK ON 命令
2 假如今天是 1998 年 5 月 12 日星期一 写一个查询产生下边的输出
Today is Monday; May 12 1998
3 试一下下边的语句
1 select *
2 from orders
3 where customer_id = "001"
4* order by customer_id;
不需要在缓冲区中重新输入这些语句 将 FROM 子句中的表改为 CUSTOMERS
在 ORDER BY 子句中加入 DESC
472
…………………………………………………………Page 473……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
第 21 天 常见的 SQL 错误及解决方法
目标
欢迎来到第 21 天 在今天你将学习下边的内容
l 几种典型的错误及它们的解决方案
l SQL 用户常犯的逻辑错误
l 防止再犯日常错误的办法
介绍
今天你将会看到一些人们 不论是菜鸟还是老鸟 在使用 SQL 常犯的错误 你也不可
避免地要犯这些错误 但是对这些错误熟悉了以后会帮助你在尽可以短的时间内解决它们
注意 我们使用 PERSONAL ORACLE 7 来进行我们的例子 在你的解释器中也会有与之
类似的错误 只是错误的代码和名字可能会不相同 我们在 SQL*PLUS 中运行这些
语句并将 ECHO 和 FEEDBACK 设置为 ON 以看到这些语句
要知道一些错误确实可以产生的错误信息 然而逻辑语法的不充分可以会在运行时导
致更大的错误 通过仔细的校审 你会避免大多数的错误 尽管你会经常被错误卡住
常见的错误
在这一部分你将会见到在所有的 SQL 语句中看到的一些常见的错误 大多数的错误简
单到你甚至想打自己几个耳光 可是也有一些错误看上去很明显但却很容易误码率解
Table or View Does Not Exist
当你在试图访问一个并不存在的表时产生的错误 这是很明显的 例如
输入
SQL》 @tables。sql
输出
473
…………………………………………………………Page 474……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
SQL》 spool tables。lst
SQL》 set echo on
SQL》 set feedback on
SQL》 set pagesize 1000
SQL》 select owner|| "。" || table_name
2 from sys。dba_table
3 where owner = "SYSTEM"
4 order by table_name
5 /
from sys。dba_table
*
ERROR at line 2:
ORA…00942: table or view does not exist
SQL》 spool off
SQL》
分析
注意在表的名字后边的星号 正确的名是 sys。dba_tables 表名中少了一个 S
但是如果你已经知道了表是存在的而你仍然收到了错误信息呢 有时你收到这个信息
是因为表并不存在 但是也可以是由于安全原因 — — 也就是说 表是存在的 但是你没有
权限访问它 这个错误用数据库服务人员的话来精确地说就是 你没有权限来访问这个表
技巧 在着急之前 请立即先确认在 DBA 的帐号或可用的工程帐号中这个表是否存在
你会经常发现表不存在的原因是因为用户没有正当的访问这个表的权限
Invalid Username or Password
输入
SQL*Plus: Release 3。2。3。0。0 on Sat May 10 11:15:35 1997
Copyright (c) Oracle Corporation 1979; 1994。 All rights reserved。
Enter user…name: rplew
Enter password:
474
…………………………………………………………Page 475……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
输出
ERROR: ORA…01017: invalid username/password; logon denied
Enter user…name:
这个错误的原因是因为用户名或密码不正确 再试一次 如果还不成功 那么你的密
码已经变了 如果你确认你输入的用户名和密码是正确的 那么在你访问多个数据库时确
认你要联接的数据库是正确的
FROM Keyword Not Specified
输入
SQL》 @tblspc。sql
输出
SQL》 spool tblspc。lst
SQL》 set echo on
SQL》 set feedback on
SQL》 set pagesize 1000
SQL》 select substr(tablespace_name;1;15) a;
2 substrfile_name; 1;45) c; bytes
3 from sys。dba_data_files
4 order by tablespace_name;
substrfile_name; 1;45) c; bytes
*
ERROR at line 2:
ORA…00923: FROM keyword not found where expected
SQL》 spool off
SQL》
分析
这个错误容易让人误解 关键字 FROM 是有的 但是你在第二行的 SUBSTR 中缺了
一个括号 这个错误也可能是由于在 SELECT 语句中缺少列名导致的 如果在 SELECT 中
的列名之后没有逗号 那么查询的处理机制会认为没有 FROM 关键字 上边的语句可以更
475
…………………………………………………………Page 476……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
正如下
SQL》 select substr(tablespace_name;1;15) a;
2 substr(file_name;1;45) c; bytes
3 from sys。d
小说推荐
- SQL语言艺术(PDF格式)
- -Page 1-SQLSSQQLL语言艺术内容介绍本书分为12章,每一章包含许多原则或准则,并通过举例的方式对原则进行解释说明。这些例子大多来自于实际案例,对九种SQL经典查询场景以及其性能影响讨论,非常便于实践,为你数据库应用维护人员阅读。资深 SQL 专家 Stéphane Faroult倾力打
- 最新章:第27章
- oracle从入门到精通(PDF格式)
- -Page 1-Oracle 从入门到精通-Page 2-资源来自网络,仅供学习 Oracle 从入门到精通一、SQL 8
- 最新章:第37章
- VB2008从入门到精通(PDF格式英文版)
- -Page 1(R)The eXperT’s Voice inBeginningVB 2008From Novice to ProfessionalChristian Gross-Page 2-Page 3-Beginning VB 2008From Novice to Professional■C
- 最新章:第214章
- C语言游戏编程从入门到精通(PDF格式)
- -Page 1-Page 2-Page 3-Page 4-Page 5-Page 6-Page 7-Page 8-Page 9-Page 10-Page 11-Page 12-Page 13-Page 14
- 最新章:第4章
- JMS简明教程(PDF格式)
- -Page 1-JMS1.1规范中文版卫建军2007‐11‐22-Page 2
- 最新章:第28章
- C语言实例教程(PDF格式)
- -Page 1-前 言Visual C+是开发运行于Windows 95和Windows NT环境下的Win32应用程序的可视化编程工具中最重要的成员之一,它为软件开发人员提供了完整的编辑、编译和调试工具和建立于Win32 API(ApplicationProgramming Interface)基
- 最新章:第143章
- 深入浅出MFC第2版(PDF格式)
- -Page 1-Page 2-山高月小山高月小 水落石出水落石出山高月小山高月小 水落石出水落石出-Page 3-深入淺出MFC(第版 使用Visual C 5.0 MFC 4.2)Dissecting MFC(Second Edition Using Visual C 5.0 MFC 4.2)侯俊
- 最新章:第309章
- 软件工程实践者的思想(PDF格式)
- -Page 1-大 道 至 简—软件工程实践者的思想周爱民(Aimingoo 著-Page 2-序2004 年 11 月初爱民(Aimingoo)第一次把他的书稿给我,我翻看了一下,第一反应讲的是感想。这不错,在技
- 最新章:第26章
- 电子电路大全(PDF格式)
- -Page 1-电力生产人员技能培训电路基础部分电路基础部分电电路路基基础础部部分分-Page 2-一、电路的基本概念和基本定律-Page 3-考试点1o 1、掌握电阻、独立电压源、独立电流源、11受控源、电容、电感、耦合电感、理想变压器诸元件的定义、性质2o 2、掌握电流、电压参考方向的概念223
- 最新章:第353章