快速解决 Error 45 initializing SQL*Plus 错误

最近,经常碰到使用sqlplus在后台运行sql脚本的情况,于是乎就遭遇了 Error 45 initializing SQL*Plus错误.

我运行的PL/SQL 文件 test.sql 如下

set serveroutput on;
set timing on;
DECLARE

BEGIN
  dbms_output.put_line(TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS'));
END;

该SQL文件所运行的Home folder所在磁盘的文件系统为 ext4. 关于文件类型,可以通过查看 /etc/fstab 文件确认.

后台运行sql 文件的命令如下

nohup sqlplus iqm_blk/[email protected] @test.sql > test.out 2>&1 &

我这里总结一下错误的主要原因

  • test.sql 文件END: 后不能有空行
  • test.sql文件END:后,需要加入 /
  • 需要在/后加入exit; 命令. 当加入了exit;后,空行是没问题的.

能正确执行的脚本如下

set serveroutput on;
set timing on;
DECLARE

BEGIN
  dbms_output.put_line(TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS'));
END;
/
exit;

希望对大家有帮助。

时间: 2024-11-07 09:53:29

快速解决 Error 45 initializing SQL*Plus 错误的相关文章

解决Error opening terminal: xterm.的错误

执行make menuconfig 时遇到Error opening terminal: xterm.的错误 解决方法: $echo $TERM xterm $echo $TERMINFO 空的 问题就出在TERMINFO变量为空值,正常应该设置为xterm所在的目录 $whereis terminfo terminfo: /etc/terminfo /lib/terminfo /usr/share/terminfo /usr/share/man/man5/terminfo.5.gz 找到xte

快速解决IMP中的ORA-00959

用IMP向测试库导入DMP时,又遇到了ORA-00959表空间不存在的问题.一般的解决方法: 1.先建表,在导入dmp时加ignore=y 的参数. 2.新建对应的表空间 3.使用expdp从新导出,在impdp时用REMAP_TABLESPACE 无论用那种方法都比较麻烦,都需要耗费一定的工作量.如果在oracle10g中,采用重命名表空间的方法,可以快速解决这个问题. SQL> alter tablespace &old_tbsname  rename to &new_tbs_n

SQL Server常见问题介绍及快速解决建议

前言 本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题.这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架. 下面一些问题是在近千家数据库用户诊断时发现的常规问题,本文分为[常见问题诊断流程]-[常见问题]-[常见问题快速解决的建议] 常见问题诊断流程 概览模块-[汇总]了解系统 了解系统性能(语句执行时间.会话等待) 语句执行时间:横坐标为时间范围,纵坐标为在执行时间在范围内分布的语句数量. (本例:收集时间内语句执行

MySql 执行语句错误 Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

关于用Power Designer 生成sql文件出现 错误  [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'int not null auto_increment comment '用户id', 的解决办法 sql语句如下 1 drop table

创建SQL作业错误的解决方法(不能将值 NULL 插入列 'owner_sid',表 'msdb.dbo.sysjobs';列不允许有空值。)

在用SQL语句创建SQL Server作业时有时出现如下错误: 消息 515,级别 16,状态 2,过程 sp_add_job,第 137 行 不能将值 NULL 插入列 'owner_sid',表 'msdb.dbo.sysjobs':列不允许有空值.INSERT 失败. 语句已终止. 这可能与为作业创建的数据库登录ID有关,这个登录ID需要是数据库的所有者(我的是sa),因此将 @owner_login_name=N'HYSERITC003/wellcomm', 中的N'HYSERITC00

YUM安装提示PYCURL ERROR 6 - "Couldn't错误的解决办法

当编译PHP时出现如下错误时,找不到头绪 这时,打开DNS   vim /etc/resolv.conf   添加一行nameserver 192.168.1.1 完成上一步,则解决该问题 YUM安装提示PYCURL ERROR 6 - "Couldn't错误的解决办法

Eclipse 出现Some sites could not be found. See the error log for more detail.错误 解决方法

Eclipse 出现Some sites could not be found.  See the error log for more detail.错误 解决方法 Some sites could not be found.  See the error log for more detail.这话的意思是在设置的update的sites有问题,问题是无法发现或找到该site.这是因为我们在使用eclipse的help-->install new software的时候,添加安装路径有时会发

解决You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (order_name, customer)

在学习hibernate一对多映射关系时,根据视频学习的时候,例子是顾客和订单的问题,一个顾客有多个订单.按照视频中的敲代码出现了You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (order_name, customer) 原因是order是mysql关键字,不能做

Sql Server中如何快速修正SQL 语句错误

本文将和大家讨论一些关于找SQL 错误的问题. 现在的系统基本都是需要用到数据库的,既然用到数据库我们就要写SQL 脚本,常用的做法是现在Microsoft Sql Server Management Sudio写好调试好,然后贴到 代码中,但这样就能保证我们的SQL 脚本正常运行吗?那如果带参数的SQL 或存储过程出现问题呢?如果数据出现问题,我们应该怎么找出错误的SQL 呢? 带着这个疑问,开始我们今天的讨论.以前用代码和数据库打交道,出现数据问题,我们会打个断点一步一步的调试,就像这样: