使用SQLPLUS在Oracle中插入多行字符串

insert a multiline string in Oracle with sqlplus(使用SQLPLUS在Oracle中插入多行字符串)
本文介绍了使用SQLPLUS在Oracle中插入多行字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个SQL脚本,它将把一个长字符串插入到表中。该字符串包含一个新行(并且这个新行是绝对必要的),因此当它被写入文本文件时,查询被拆分成多行。类似于:

insert into table(id, string) values (1, 'Line1goesHere 

Line2GoesHere 
blablablabla
');

这在Toad中运行正常,但当我将其保存为.sql文件并使用SQLplus运行它时,它将每行视为单独的查询,这意味着每行都将失败(因为insert into table(id, string) values (1, 'Line1goesHereLine2GoesHere不是格式良好的脚本。

SP2-0734: unknown command beginning "Line2GoesHere" - rest of line ignored.

是否有解决此问题的方法?

推荐答案

启用SQLBLANKLINES以允许在SQL语句中使用空行。例如:

SET SQLBLANKLINES ON
insert into table(id, string) values (1, 'Line1goesHere 
Line2GoesHere 

blablablabla
');

这个问题的前提略有错误。默认情况下,SQL*Plus确实允许多行字符串。只有空白行才会导致问题。

这篇关于使用SQLPLUS在Oracle中插入多行字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)