请问:在shell脚本执行sql语句为什么会报错
发布时间:2011-06-30 07:25:24 文章来源:www.iduyao.cn 采编人员:星星草
请教:在shell脚本执行sql语句为什么会报错
最近,在网上看到有个查看数据库表空间的shell,就修改了部分,在机器上进行了调试,老是报错,代码和报错信息如下:
#####################################################################
## he_oracle.sh ##
#####################################################################
#!/bin/ksh
sqlplus inventory/inventory@mos5100 <<EOF
set feed off
set linesize 100
set pagesize 200
spool hetest.txt
SELECT F.TABLESPACE_NAME,
TO_CHAR ((T.TOTAL_SPACE - F.FREE_SPACE),'999,999') "USED (MB)",
TO_CHAR (F.FREE_SPACE, '999,999') "FREE (MB)",
TO_CHAR (T.TOTAL_SPACE, '999,999') "TOTAL (MB)",
TO_CHAR ((ROUND ((F.FREE_SPACE/T.TOTAL_SPACE)*100)),'999')||' %' PER_FREE
FROM (
SELECT TABLESPACE_NAME,
ROUND (SUM (BLOCKS*(SELECT VALUE/1024
FROM V$PARAMETER
WHERE NAME = 'db_block_size')/1024)
) FREE_SPACE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME
) F,
(
SELECT TABLESPACE_NAME,
ROUND (SUM (BYTES/1048576)) TOTAL_SPACE
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME
) T
WHERE F.TABLESPACE_NAME = T.TABLESPACE_NAME
AND (ROUND ((F.FREE_SPACE/T.TOTAL_SPACE)*100)) < 80;
spool off
exit
EOF
登录到oracle用户下,直接执行:ck_tbsp.sh 后就报如下错误信息:
[root@mos5100db /opt/yanpan 0 ]#su oracle
oracle@mos5100db:/opt/yanpan> he_oracle.sh
SQL*Plus: Release 11.1.0.7.0 - Production on Tue Sep 13 12:24:07 2011
Copyright (c) 1982, 2008, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Release 11.1.0.7.0 - 64bit Production
SQL> SQL> SQL> SQL> SQL> 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 FROM V
*
ERROR at line 9:
ORA-04044: procedure, function, package, or type is not allowed here
SQL> SQL> Disconnected from Oracle Database 11g Release 11.1.0.7.0 - 64bit Production
oracle@mos5100db:/opt/yanpan>
请各位大大解答!
------解决方案--------------------
可能是sql文太长了
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
erlang:创建表
mnesia:create_table(student, [{attributes,{name,number,sex}}]).
怎么老是提示:
{aborted,{bad_type,student,{...
-
100分求助,matlab一维矩阵变成二维矩阵,怎么感觉我写的代码这么绕呢
希望把Input矩阵(一维)变成3行4列的二维矩阵Output;我写了下面...
-
为什么没有易语言版块呢?
为什么没有易语言版块呢?
------解决方案--------------------
易语言,还不常用,交流也不比,所以无....
-
批处理的一个问题
想用批处理更改文件属性
@echo off
arrtib -R /S E:\home\*.*
exit
这样写是错误的吗?
为什么没起作用啊
--...
-
几个关于大型机的问题(新手求救啊~)
1、z/OS 和UNIX系统的相同点和相异点有哪些啊?主目录和用户目录的区别是什么啊?
2、用JCL创建一...
-
急求!如何用正则截取一对标签中的字符当中的日期
<p class="source">
<!--[if !IE]>收藏功能<!...
-
批处理代码放在U盘里,如何复制整个硬盘的时间段文件? qivsran老师的答案,谢谢!
@echo off
md 新文件
setlocal enabledelayedexpa...
-
复制文件不带目录文件夹如何修改代码?同名文件仅复制最新的
@echo off
md %computername%资料 2>nul
Cd /d %computername%资料
F...
-
求C里面 全角半角转换函数
求C里面 全角半角转换函数
------解决方案--------------------
我在别处看了,希望对你有帮助。
...
-
求助:关于qtp10 无法识别 maven自动构建flex3.6 的问题
近日遇到maven自动构建flex3.6的问题。希望大家提出宝贵意见。
问...