Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Лишний перевод строки в консоли  [new]
Ruslan Popov
Member

Откуда: Snegiri / Russia
Сообщений: 113
Есть у меня такой кусок кода:
prompt ONE 
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('&partitioning'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
в консоле печатает (независимо от значения &partitioning):
ONE

TWO
а хотелось бы:
ONE
TWO

как от лишнего перевода строки избавиться?
из-за этого у меня процесс установки схемы очень некрасив :)
13 фев 08, 12:34    [5282981]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
SQL*Plus
Member

Откуда: Россия, Москва
Сообщений: 8136
"в консоле" ето где?
И где тут "лишний перевод строки"?
Приведите скрипт и результат его выполнения.
13 фев 08, 12:41    [5283080]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Ruslan Popov
Member

Откуда: Snegiri / Russia
Сообщений: 113
Так понятнее?
[oracle@cheetah:tmp]$ cat > test.sql
prompt ONE
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
EXIT
[oracle@cheetah:tmp]$ sqlplus radz@lynx @test.sql

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 13 13:36:53 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

ONE




TWO
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@cheetah:tmp]$
Пустые строки между ONE и TWO очень сильно напрягают.
13 фев 08, 13:40    [5283677]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
ERROR MESSAGE
Member

Откуда: Москва
Сообщений: 376
Ruslan Popov
Так понятнее?
[oracle@cheetah:tmp]$ cat > test.sql
prompt ONE
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
EXIT
[oracle@cheetah:tmp]$ sqlplus radz@lynx @test.sql

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 13 13:36:53 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password: 

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

ONE




TWO
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@cheetah:tmp]$
Пустые строки между ONE и TWO очень сильно напрягают.
Пользуй тег SRC от етого форума и будет всем понятнее
13 фев 08, 13:48    [5283744]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
ERROR MESSAGE
Member

Откуда: Москва
Сообщений: 376
SET PAGESIZE 0
Уменьшает число пустых строк
13 фев 08, 13:49    [5283755]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Andrey.L
Member

Откуда: Харьков
Сообщений: 1546
set termout off
set termout on
13 фев 08, 13:54    [5283826]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Ruslan Popov
Member

Откуда: Snegiri / Russia
Сообщений: 113
Надо полностью избавиться, частичное решение не подходит:
[oracle@cheetah:tmp]$ cat > test.sql
SET PAGESIZE 0
prompt ONE
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
EXIT
[oracle@cheetah:tmp]$ sqlplus radz@lynx @test.sql

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 13 13:53:35 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password: 

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

ONE


TWO
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@cheetah:tmp]$
13 фев 08, 13:55    [5283842]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Ruslan Popov
Member

Откуда: Snegiri / Russia
Сообщений: 113
Andrey.L
set termout off
set termout on


Эээээ... Где я ;)

[oracle@cheetah:tmp]$ cat > test.sql
SET TERMOUT OFF
prompt ONE
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
SET TERMOUT ON
EXIT
[oracle@cheetah:tmp]$ sqlplus radz@lynx @test.sql

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 13 13:55:33 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password: 

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@cheetah:tmp]$ 

А вот это подходит!

[oracle@cheetah:tmp]$ cat > test.sql
prompt ONE
SET TERMOUT OFF
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
SET TERMOUT ON
prompt TWO
EXIT
[oracle@cheetah:tmp]$ sqlplus radz@lynx @test.sql

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 13 13:56:02 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password: 

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

ONE
TWO
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@cheetah:tmp]$
13 фев 08, 13:59    [5283880]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Andrey.L
Member

Откуда: Харьков
Сообщений: 1546
Ruslan Popov
Andrey.L
set termout off
set termout on


Эээээ... Где я ;)

[oracle@cheetah:tmp]$ cat > test.sql
SET TERMOUT OFF
prompt ONE
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
prompt TWO
SET TERMOUT ON

А вот это подходит!

[oracle@cheetah:tmp]$ cat > test.sql
prompt ONE
SET TERMOUT OFF
COLUMN local NOPRINT NEW_VALUE c_local_clause
SELECT DECODE(lower('yes'), 'yes', 'LOCAL', '') local FROM dual;
SET TERMOUT ON
prompt TWO

Я же не писАл что нужно сделать так как ты сделал в 1-м варианте ;-)
13 фев 08, 14:40    [5284276]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
Ruslan Popov
Member

Откуда: Snegiri / Russia
Сообщений: 113
В общем, я счастлив. Баг закрыт :)
13 фев 08, 17:37    [5285850]     Ответить | Цитировать Сообщить модератору
 Re: Лишний перевод строки в консоли  [new]
SQL*Plus
Member

Откуда: Россия, Москва
Сообщений: 8136
Ruslan Popov
В общем, я счастлив. Баг закрыт :)
Как же мало бывает нужно человеку для счастья... :-)
13 фев 08, 20:43    [5286748]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить