标签: sqlplus

从 SQL*Plus 中设置编码

我有一大组带有 SQL 命令的文件,我使用使用该@@运算符的 SQL*Plus 脚本运行这些文件。我在第三方计算机上运行该脚本(甚至通过电子邮件发送),因此我想使其尽可能独立。

文件编码为 Win-1252。目前,我需要NLS_LANG在运行脚本之前设置环境变量:

C:\> SET NLS_LANG=SPANISH_SPAIN.WE8MSWIN1252

C:\> echo exit | sqlplus foo/bar@//example.com/xe @install.sql
Run Code Online (Sandbox Code Playgroud)

这有效,但我想知道是否可以使用 SQL 或 SQL*Plus 命令更改客户端编码。(或者至少读取值并在不匹配时中止执行。)

oracle sqlplus oracle-xe

4
推荐指数
1
解决办法
2万
查看次数

如何创建具有特定 user_id 的用户?

是否可以在创建时指定用户的 user_id?

SQL> create user user1 identified by user1;

User created.

SQL> select user_id, username from all_users where username='USER1';

   USER_ID USERNAME
---------- ------------------------------
        72 USER1

SQL>
Run Code Online (Sandbox Code Playgroud)

它可以是我指定的数字而不是 72 吗?

oracle oracle-11g-r2 sqlplus

3
推荐指数
1
解决办法
750
查看次数

在 sqlplus 脚本中出现错误时停止

我正在使用多个 .sql 调用的 sql 文件部署 pl/sql 代码@@file。如果包出现编译错误,脚本会继续执行到最后。

有没有办法停止每个编译错误?

我试过了,WHENEVER SQLERROR EXIT SQL.SQLCODE但脚本仍在继续。

oracle sqlplus plsql oracle-sql-developer

3
推荐指数
1
解决办法
5303
查看次数

如何替换 PostgreSQL 中的变量

给定的 Oracle 查询通过替换变量将数据插入表中。我如何在 PostgreSQL 中实现相同的目标?

INSERT INTO control_threshold (
    threshold_id, group_name, description, sql, low_value, high_value)
VALUES(
    threshold_seq.nextval, '&2', '&1',  TRIM('&5' || '&6' || '&7' || '&8' || '&9'),
    trim('&3'), trim('&4'));
Run Code Online (Sandbox Code Playgroud)

postgresql sqlplus psql

3
推荐指数
1
解决办法
2700
查看次数

尝试将 Windows SQL*Plus 客户端连接到 Oracle 11g Linux 服务器时出现 ORA-12560 错误

我在我的 Mac 上的 Centos VM 上安装了 11g。我已经准备好一切并在服务器上工作。我已经包含了我在 cenos 上运行的以下命令。

$lsnrctl 状态

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 23-JUN-2014 14:49:41

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hayer)(PORT=1522)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date                23-JUN-2014 14:03:58
Uptime                    0 days 0 hr. 45 min. 42 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/hayer/listener/alert/log.xml
Listening Endpoints …
Run Code Online (Sandbox Code Playgroud)

windows oracle-11g-r2 linux sqlplus connectivity

3
推荐指数
1
解决办法
8万
查看次数

在 sqlplus 中使用事务

我从 postgresql 来到 oracle。在 postgresql 中,我可以使用命令行工具 psql 在事务中执行删除或更新:

dbpool.production=> begin;
BEGIN
dbpool.production=*> delete from foo where account_id like '%1000%';
DELETE 9
dbpool.production=*> commit;
COMMIT
dbpool.production=> 
Run Code Online (Sandbox Code Playgroud)

我喜欢在提交事务之前看到我得到了预期的计数。

在 sqlplus(Oracle 命令行工具)中,事情并非如此。当我输入“开始;”时,它只是开始读取更多的输入,从不明显地做任何事情:

SQL> begin;
  2  update opacs_work_orders set customer_id = null;
  3  commit;
  4
Run Code Online (Sandbox Code Playgroud)

我如何使用 sqlplus 对一个事务执行一个或多个语句?

oracle-11g-r2 sqlplus transaction

3
推荐指数
1
解决办法
1万
查看次数

如何用退格键擦除sqlplus?

使用 SQL*PLUS,我无法在行命令期间使用退格按钮擦除内容。

当我按下退格键时,它不是擦除而是写 ^H

有没有办法配置退格键使其按预期工作?

oracle oracle-11g-r2 sqlplus

3
推荐指数
1
解决办法
8342
查看次数

无法使用 sqlplus 以 sys as sysdba 身份连接数据库

我是 oracle server 18c 的新手(目前正在学习在线课程)。我的问题是 sql*plus,我尝试使用 sqlplus 然后使用 sys 作为 sysdba (它不起作用),错误出现在下面。 在此输入图像描述

但是,如果我使用 sqlplus / as sysdba (它有效,我不知道为什么) 在此输入图像描述

我尝试过这个命令:lsnrctl start,但再次不起作用。另外,我检查了我的listener.ora和tnsnames.oraca 在此输入图像描述 在此输入图像描述

我已在 .bash_profile 中附加了我的环境设置 在此输入图像描述

请帮我这个。谢谢

oracle sqlplus listener

3
推荐指数
1
解决办法
5万
查看次数

如何在Mac上安装Oracle的sqlplus?

我需要如何在 Mac 上安装 Oracle 的 sqlplus 的步骤。

oracle sqlplus

3
推荐指数
1
解决办法
1万
查看次数

当我在命令提示符下使用 sqlplus 时,设置 TERMOUT OFF 不起作用?

我在我的 spool sql 脚本中使用下面列出的 sql 语句,并且我正在从 sqlplus 执行这个脚本。但在终端查询输出仍然存在,我在命令提示符中使用 sqlplus。但是当我尝试直接启动 sqlplus.exe 并使用此脚本时,我没有在终端中获得查询输出。

当我从命令提示符启动 sqlplus 时,有人可以帮助如何停止终端输出吗?

SET ECHO OFF
SET TERMOUT OFF
SET FEEDBACK OFF
SET PAGESIZE 0  
SET LINESIZE 83
SET TRIMSPOOL ON
SET WRAP ON
SET RECSEP OFF

SPOOL '&1'

SELECT 
    DATA_OUT_DATA 
FROM 
    STAGE.DATA_TABLE
ORDER BY 
    DATA_UNIQ_ID,DATA_INV_ID, DATA_SEQ_NO;

SPOOL OFF

SET PAGESIZE 24
SET LINESIZE 80
SET FEEDBACK ON
SET TERMOUT ON
Run Code Online (Sandbox Code Playgroud)

oracle windows sqlplus

2
推荐指数
1
解决办法
2万
查看次数