sqlplus执行有空行的SQL语句

Oracle,Sql*plus执行语句;DBMS_OUTPUT输出 有以下脚本,利用游标去更新表: 需更新的记录约7万条,在PL/SQL Developer中执行该脚本,卡死。 考虑将更新语句输出,再在PL/SQL Developer直接执行更新语句。于是将脚本稍加改动: 在PL/SQL Developer中执行遇到错误overflow。 overflow原因:在Oracle10gr2版本以前中,利用DBMS_output.putline()来输出是有限制 阅读详情
1.1        SQL语句有空行,无法在PLSQL中执行

拷贝有空行的SQL语句到PLSQL或者SQL*PLUS中执行报错。

1.1.1        现象描述

XX报表系统在安装时,需要从文本编辑工具中拷贝SQL语句到PLSQL中执行,在PLSQL的执行窗口中,会出现空行,比如下面的脚本:

CREATE OR REPLACE VIEW v_userlog

AS

SELECT 

  logid,              --日志编号

  logtime,           --操作时间

  phonenumber,      --用户号码

  servicetype,      --业务类型

  operatetype,

  olditem,          --修改前状态

  newitem,          --修改后状态

  admincode ,      --客服帐号

  reasoncode ,     --原因编号

  reason,           --原因名称

  operator,         --操作来源

  oldttlid,

  newttlid

 

FROM t_userlog;

如果拷贝到PLSQL或者SQL*PLUS中执行, 就会出现错误:

SQL>

 

FROM t_userlog

 

ORA-00900: 无效 SQL 语句

 

SQL>

 1.1.2        原因分析

根据报错信息来看,是由于SQL语句中的空行引起的。空行的出现可能是由于在某些文本编辑工具中自动加入不可见的换行字符引起的。

1.1.3        处理过程

1、  本可以通过删除空行的方法来解决,但报表系统中SQL语句何止千行,所以手工删除的方法实不可取。

2、  使用SQLBLANKLINES参数,即可接受SQL语句中的空行,进而解决此问题:

SQL> SET SQLBLANKLINES ON

SQL>

CREATE OR REPLACE VIEW v_userlog

AS

SELECT 

  logid,              --日志编号

  logtime,           --操作时间

  phonenumber,      --用户号码

  servicetype,      --业务类型

  operatetype,

  olditem,          --修改前状态

  newitem,          --修改后状态

  admincode ,      --客服帐号

  reasoncode ,     --原因编号

  reason,           --原因名称

  operator,         --操作来源

  oldttlid,

  newttlid

 

FROM t_userlog;

 

SQL>

View created

SQL>

Oracle系列:Oracle sqlplus执行sql文件语句结束符号(空行、分号;、斜杠/) with a semicolon (;) with a slash (/) on a line by itself with a blank line 阅读详情

相关推荐

去除plsql复制的sql语句的多余空格和换行符

在plsql把一个sql语句美化后要复制到程序里使用时,就会发现有多余的空格和换行符,此程序将美化后的sql语句还原成1行sql语句

在plsql里面怎么去掉空行_利用Word搞定

方法二:分页符导致的多余空页,是没有办法用【Delete】删除的。操作方法:双击选择页眉,同时按住「Ctrl+Shift+N」,页眉的横线瞬间消失的无影无踪,实在是太好用了!方法二:将文字先复制到电脑自带的记事本,可以过滤掉麻烦的格式问题和空白,还可以去掉附加的广告及其他信息。操作方法:使用【Ctrl+H】开查找功能,然后把两个【^p】输入查找栏,替换成一个~搞定!方法一:Word无格式粘贴,右键粘贴的时候选择【无格式粘贴】即可。有时候小伙伴会发现,Word会出现空白页,但用常规的方法去不掉?...

jnrjian的博客 770

别再只盯着报点率了:聊聊电容触摸屏算法里那些不为人知的‘软实力’

本文深入探讨了电容触摸屏算法中常被忽视的‘软实力’,包括环境噪声干扰、信号衰减补偿和多物理场耦合等核心挑战。通过对比消费电子与工业场景的算法需求,揭示了触摸算法在不同应用中的技术分野。文章还提供了实用的算法评估方法和前沿发展趋势,帮助开发者全面了解电容触摸屏技术的隐秘战场。

weixin_42524276的博客 388

SQL*Plus Command -- set

目录 1,SET ECHO {ON | OFF} 2,SET HEA[DING] {ON | OFF} 3,SET LIN[ESIZE] {80 | n} 4,SET LONG {80 | n} 5,SET NULL text 6,SET PAGES[IZE] {14 | n} 7,SET SERVEROUT[PUT] {ON | OFF} [SIZE {n |UNL[IMITE...

cowboy90的专栏 1677

达梦数据守护集群监视器详解与应用指南

主库/备库:承担读写和只读服务的数据节点Redo 日志:记录数据库变更的核心日志Redo 日志传输:主备库间的日志同步机制Redo 日志重演:备库重做日志的应用过程守护进程 (dmwatcher):实例级别的监控和管理组件监视器 (dmmonitor):集群级别的监控和管理工具监视器作为数据守护系统的重要组成部分,提供了集群监控、故障管理和状态确认等关键功能。达梦数据守护集群监视器是维护数据库高可用性的关键工具。

huanhuanzhou blog 1058

NeuralKG的安装及简单demo使用(浙江大学开源知识图谱表示学习工具)

记录NeuralKG的安装和使用,以及解决windows系统下的运行demo.py出现的问题。

m0_46621271的博客 1397

【Oracle】初始化Sql文件中存在空行导致执行SQL失败

【问题】 PLSQL developer中复制一段 Sql执行没有反应 【分析】分析为oracle在执行sql中存在空行问题 【结论】 方法1、在sql中中删除空行 方法2、使用SQLBLANKLINES参数,即可接受SQL语句中的空行,SET SQLBLANKLINES ON ...

乙醚的专栏 771

LoRa项目实战:手把手教你为ESP32选配和焊接天线(从PCB到信号测试)

本文详细介绍了为ESP32选配和焊接LoRa天线的全流程,包括天线选型、PCB布局设计、焊接工艺及信号测试。重点解析了PCB板载天线、导线天线和陶瓷贴片天线的适用场景与性能特点,并提供专业的焊接技巧和信号测试方案,帮助开发者优化LoRa模块的无线通信性能。

weixin_30470643的博客 392

PLSql 在Command Windows执行SQL时遇到因空行不执行的问题

PLSql 在Command Windows执行SQL时遇到因多一个空行,导致某些SQL语句不会执行的问题 软件版本: Oracle:10g 10.2.0.1 PLSql:10.0.5.17 故障现象 在一大段SQL语句,拷贝到Command Window中执行时,发现有一些语句没有得到执行,但同样的SQL语句在SQL Window里可以得到全部执行,但是在Command WIndows中...

David 2028

IPC-7351标准实战:如何用LPWizard_10快速生成PCB封装库(附避坑指南)

本文提供了一份详细的IPC-7351标准实战指南,手把手教你使用LPWizard_10软件快速生成符合行业标准的PCB封装库,并直接导入Cadence Allegro。文章深入解读了IPC-7351密度等级的选择逻辑,并重点分享了软件配置、QFN封装生成实战步骤,以及导出失败、焊盘异常等常见问题的避坑解决方案,旨在帮助硬件工程师提升设计效率和可靠性。

weixin_29207439的博客 153

HDR 成像技术学习(三)—— LOFIC

LOFIC(Lateral Overflow Integration Capacitor,横向溢出集合电容)介绍,从像素结构到工作时序。

沧海一升的博客 9729

sqlplus注释行号错误的问题

又一个和注释有关的问题。 sqlplus注释导致语句重复执行:http://yangtingkun.net/?p=1155 和上一个错误类似,不过这个问题可能会使得用户...

ckawt40802的专栏 185

数据仓库数据质量监控和处理方法最佳实践

指的是检查数据是否存在反常或者错误的情况,例如数值反常地过大或者过小,或者超过记录的波动值,对应的规则包括数值波动检查,最大值、最小值检查,跨表准确性等。指的是检查数据是否存在缺失的情况,这里的缺失可以是整个数据集的记录缺失,也可以是某个字段记录的缺失,对应的规则包括空值检查,表总行数检查。指的是检查数据是否符合规范,是否按照规定的格式存储,对应的规则包括正则表达式检查,字段长度检查,枚举集合检查,数值范围等。指的是检查哪些数据是重复数据或者数据的哪些属性是重复的,对应的规则例如主键唯一性检查。

大模型大数据攻城狮的专栏 895

oracle 导出空行,oracle sqlplus空行处理方法

默认情况下,在sqlplus中运行的脚本,如包含空行,sqlplus会不认的,对sqlplus空行的出现,最常见的有两种形式,一种是sql语句中有空行,另一种是sql后有空行,如下:sqlplus运行的sql语句中有空行--a1.sqlselectsysdatefromdual;sqlplus运行sql语句中无空行,但sql语句与分号(结束符)有空行--b1.sqlselectsysdatefro...

weixin_32047493的博客 1478

4、风险管理、信息安全与信息管理的核心原则

本文深入探讨了风险管理、信息安全与信息管理的核心原则,涵盖Risk IT框架、ISO 31000标准以及信息安全与信息管理的关键原则。通过案例分析与实际应用挑战的解析,帮助组织更好地应对数字化时代的风险与安全问题,实现可持续发展。

bread的博客 120

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

sqlplus的小秘密2『By oldwain』

Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:[@more@]select deptno, empno, ename from emp wh...

cq201409的博客 124

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

sqlplus执行语句报错:unknown command beginning解决方案

今天在sqlplus中执行一个建表脚本的时候,报错“SP2-0734: unknown command beginning "crea..." - rest of line ignored."。但是这个建表脚本在navicat客户端执行是正常的。因为sql脚本是在windows下编写的,一开始认为是windows和linux的一些格式符不同导致sqlplus不识别脚本中的命令,于是打开vim

人生如逆旅,我亦是行人。。。 1万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

生产环境oracle添加数据问题

生产环境oracle添加数据问题 执行的脚本大致是这样的 insert into xxx(列名1,列名2,列名3.。。。。。。。。。。。。。) (select .......) 生产环境执行之后,数据没有添加进去,只有select之后的结果。在查了资料以后,才发现原来sqlplus中执行,脚本中不能有空行,去掉空行之后,执行ok 百度资料: 默认情况下,在sqlplu...

weixin_30629977的博客 142

也许你还不知道 - sqlplus的小秘密(2)

Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:select deptno, empno, ename from emp where empn...

cong870624的博客 154

sqlplus 空行 结束命令

Sqlplus联机文档学习 地址:http://download.oracle.com/docs/cd/E11882_01/server.112/e16604/ch_four.htm#i1039255 [原文] Ending a SQL Command You can end a SQL command in one of three ways: with a semi

mengxiangfeiyang的专栏 2213

SQLPLUS中SQL换行执行

正常情况下,在SQLPLUS中输入

城市蜗牛 1万+

SQLPLUS报ORA-00900: 无效 SQL 语句

sqlplus不能运行带空行的sql脚本文件,将脚本里的空行删掉再执行。 sqlplus也可以设置为允许运行带空行的脚本,具体参考http://blog.youkuaiyun.com/andybbc/article/details/51178128

injavahome的博客 9506

shell脚本sqlplus执行sql输出到文件

Linux系统中,通过shell脚本之心相应的sql语句,将查询结果输出到对应为文件中

qq_23859799的博客 1万+

转 SQLPLUS中SQL换行执行

权声明:本文为博主原创文章,未经博主允许不得转载。 正常情况下,在SQLPLUS中输入命令时,可以换行,但不能有空格,否则不能执行,会直接返回到SQL>下。但通过命令设置可以实现语句换行时允许有空行的情况出现。 设置前: http://blog.youkuaiyun.com/anyqu/article/details/41172055 oracle s...

weixin_34162228的博客 888

sqlplus中清理屏幕语句_sqlplus的小秘密[转]

转载自:1、显示空格有没有为了dbms_output.put_line会"吃掉"最前面的空格而苦恼?SQL> set serveroutput onSQL> exec dbms_output.put_line(' abc');abcPL/SQL procedure successfully completed.(俺以前曾经很苦恼为了保留空格, 尝试了加".", 加不可见字符等办法,...

weixin_31095703的博客 241

SQLPlus命令使用指南(三)

SQLPlus命令使用指南(三)/*------------------------------------------------------------------------作者:翁彦 时间:2004-3-9欢迎转载,请保留作者信息/*---------------------------------------------------------------------

enhydraboy的专栏 2673
上一篇: 单独安装apache和PHP
下一篇: Oracle中修改某个字段可以为空
andybbc
博客等级 码龄11年 64粉丝 93原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值