我想从Oracle SQL Developer创建我的查询的平面文件(文本文件).
我已经使用SPOOL通过脚本文本文件成功创建了文本文件,但我想将每列的标题删除到我的输出中.
我得到这个输出:
Header000001 Header000002 ------------ ------------ Adetail1 Bdetail1 Adetail2 Bdetail2 Adetail3 Bdetail3
但是,我想得到这个输出:
Adetail1Bdetail1 Adetail2Bdetail2 Adetail3Bdetail3
我已经尝试过命令"set heading off",但是有消息说:
"SQLPLUS COMMAND Skipped: set heading off".
Run Code Online (Sandbox Code Playgroud)
这些是我发出的输入:
spool on;
spool C:\SQLFiles\PSB_ATMLKP.txt;
set newpage 0;
set echo off;
set feedback off;
set heading off;
select terminal_number, terminal_name from terminal_table;
spool off;
Run Code Online (Sandbox Code Playgroud) 我希望能够以漂亮的方式显示select中的结果数据,而不是其他列下的所有列.
以下是sqlplus显示我的表数据的方式:
但我想把它们表现为:
Name | Address | Phone |
-------+---------------+-------------+
name1 | address1 | phone1 |
name2 | address2 | phone2 |
name3 | address3 | phone3 |
Run Code Online (Sandbox Code Playgroud)
不是每一列都在另一列之下
我一直在寻找一段时间,但似乎无法找到答案所以这里...
我有一个CSV文件,我想导入Oracle(9i/10i)中的表.
后来我打算用这个表作为另一种用途的查找.
这实际上是一种变通方法我工作以来的事实,使用IN子句多于1000个值查询是不可能的.
如何使用SQLPLUS完成?
谢谢你的时间!:)
我有一个批处理文件,它在sqlplus中运行SQL脚本并将输出发送到日志文件:
sqlplus user/pw <RowCount.sql> RowCount.log
我的日志文件包含:
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
SQL> SQL>
COUNT(*)
----------
0
SQL>
COUNT(*)
----------
0
Run Code Online (Sandbox Code Playgroud)
等等,但它有几千行输出,因此很难确定哪些结果属于哪个陈述.
我想在输出中添加一些格式,以便我可以看出发生了什么.要么执行语句的回显,要么在脚本中手动插入一些"echo"语句就可以了.理想情况下,它看起来像这样:
SQL> select(*) from TableA;
COUNT(*)
----------
0
SQL> select(*) from TableB;
COUNT(*)
----------
0
Run Code Online (Sandbox Code Playgroud) 为了减少鼠标活动,我想知道是否有这样的命令快捷方式(例如CLS或Ctrl + L)来提供SQL*Plus(?)"CLEAR SCREEN"命令功能,通过点击橡胶端 - Oracle SQL Developer中的铅笔图标清除较低的"结果"子选项卡(...我确定不正确的术语).
我在文本文件中编写了几个sql脚本,并用.sql扩展名保存.我想在sql plus终端中执行这些脚本,而不必手动键入独立的sql脚本,但我正在努力解决它.如果有人能列出所涉及的步骤,我将非常感激.
我可以在终端中复制并粘贴这些脚本,但这不是我所看到的,我想看看是否有办法在sql plus编辑器中提供脚本的路径.
我今天试图遵循一些指示,并从评论开始
REM In SQLPlus I manually copy in each line and execute it.
Run Code Online (Sandbox Code Playgroud)
那很好,我没有SQLPlus,我有SQLDeveloper.粘贴的行是以下类型:
@\\server\dir\dir\dir\commandfile1.txt;
COMMIT;
Run Code Online (Sandbox Code Playgroud)
...等等.
当我在SQL窗口中尝试它时,它不喜欢它.我手动打开并粘贴在命令中,对此也不满意.(我是否提到我对这个应用程序也不是很好,也不是Oracle,但今天其他所有人都在外面?)那里的文件以如下代码开头:
rem
set echo on
rem
execute procedure_name ('parameter1', 'parameter2');
Run Code Online (Sandbox Code Playgroud)
一个同事确实有SQLPlus,我们一起解决了它.但是,有没有办法让我用SQLDeveloper做到这一点,所以如果他也出局我就不会被卡住?
我想查看上次在Oracle 10g服务器上运行统计信息的时间.我通常会通过OEM做到这一点,但由于无关的原因,OEM已关闭.有什么方法可以使用sqlplus来检查这个吗?如果输出格式合理,那将会非常有用.
我根据这里给出的指令安装了sqlplus
sqlplus 'username/password@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.100)(PORT=1521))(CONNECT_DATA=(SID=ORCL)))'
Run Code Online (Sandbox Code Playgroud)
这给了我错误
SQL*Plus: Release 11.2.0.4.0 Production on Fri Jul 10 16:10:38 2015
Copyright (c) 1982, 2013, Oracle. All rights reserved.
ERROR:
ORA-21561: OID generation failed
Enter user-name:
Run Code Online (Sandbox Code Playgroud)
这个问题的解决方案是什么?
PS:我已经添加了主机名,主机已经有了价值.
我正在开发AWS服务.我有一个ec2 ( centos )例子.我需要在这台centos机器上配置SQL*Plus客户端.
我想要连接的服务器位于某个远程区域.服务器版本是oracle-se(11.2.0.2)
请帮我在centos机器上安装客户端.
提前致谢.
sqlplus ×10
oracle ×8
amazon-ec2 ×1
centos ×1
columnheader ×1
csv ×1
database ×1
import ×1
linux ×1
oracle10g ×1
oracle11g ×1
spool ×1
sql ×1
sql-loader ×1
sql-scripts ×1
statistics ×1