Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Oracle... Почему запрос не работает?


SergP. ©   (2006-09-06 11:49:00) 

Извиняюсь за то что вопрос к Дельфи не имеет отношения, но все же
есть запрос (в упрощенном варианте, содержащий проблемную часть):
select to_char(nvl(zn,0),'000000000000000.0000') from table

Запускаю из SQLPlus - работает

А если из SQL Nafigator, то
выдает  ORA-12702: invalid NLS parameter string used in SQL function

В чем может быть дело ?


SergP.   (2006-09-06 16:29:00) [1]

> [17] Danilka ©   (06.09.06 16:13)
> [16] SergP.   (06.09.06 15:49)
> А версия навигатора какая?


4.3.2.476


Danilka   (2006-09-06 16:13:00) [2]

[16] SergP.   (06.09.06 15:49)
А версия навигатора какая?


SergP.   (2006-09-06 15:49:00) [3]

select to_char(nvl(6,0),'000000000000000.0000') from dual

Не работает в нафигаторе


evvcom   (2006-09-06 15:05:00) [4]

> [14] Danilka ©   (06.09.06 14:58)

А я и не говорю, что он обязательноправит:

> Но нафигатор можеттвой селект подправить

Может и не правит, может нигде и не почитаешь. Вот Оракл точно правит и не всегда так, как ты того ожидаешь. :)


Danilka   (2006-09-06 14:58:00) [5]

[13] evvcom ©   (06.09.06 14:49)
> Но нафигатор может твой селект подправить на свое усмотрение

хм.
первый раз про это слышу...
просто интересно, а где можно почитать, про его "исправления" запросов?
и почему у меня и у Val он ничего не подправляет?
мне все-таки кажется, что дело в настройках, либо login.sql для sql plus, либо в настройках sql navigator. кто-то чего-то там нахимичил.


evvcom   (2006-09-06 14:49:00) [6]

> [12] Danilka ©   (06.09.06 14:02)
> Ошибки ORA-... возвращает сервер

Естественно сервер. Никто и не говорит, что это нафигатор. Но нафигатор может твой селект подправить на свое усмотрение, и это усмотрение ораклу не понравится, о чем он и сообщит в виде ORA-...


Danilka   (2006-09-06 14:02:00) [7]

ANB ©   (06.09.06 12:10)
> И, чувствую, нафигатор отсебятину влепил.

Ошибки ORA-... возвращает сервер, а не нафигатор или кто-то ишшо.
А нафигатор я люблю.
Только ошибку повторить не удается.

SergP. - пробовал запросы из [4]?


Petr V. Abramov   (2006-09-06 13:40:00) [8]

> Запускаю из SQLPlus - работает
 и это есть истинав последней инстанции. Остается только плюнуть в рожу нафигатору


ANB   (2006-09-06 13:00:00) [9]


> SergP.   (06.09.06 12:57) [9]

Выкинь его, поставь девелопер или тоад. А лучше и то и другое.


SergP.   (2006-09-06 12:57:00) [10]

Да и в SQLPlus запрос-то работает... в нафигаторе не хочет...


SergP.   (2006-09-06 12:57:00) [11]

> [5] ANB ©   (06.09.06 12:40)
>
> > zn
>
> текстовый, похоже.


Неа... числовой.. ZN NUMBER(20,4)


Val   (2006-09-06 12:44:00) [12]

автор - пробуем те же запросы, рассказываем нам про zn.


Val   (2006-09-06 12:43:00) [13]

select to_char(nvl('r',0),'000000000000000.0000') from dual
*
ORA-01722: invalid number

ORA-12702 invalid NLS parameter string used in SQL function

Cause: An invalid parameter or value was entered in the NLS parameter string in a SQL function.

Action: Check the syntax of the function and the parameters. Enter the command again using the correct syntax and valid values.


ANB   (2006-09-06 12:40:00) [14]


> zn

текстовый, похоже.


Val   (2006-09-06 12:33:00) [15]

SQL Navigator  4.4

Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production      
PL/SQL Release 9.2.0.6.0 - Production                            
CORE 9.2.0.6.0 Production                                        
TNS for Linux: Version 9.2.0.6.0 - Production                    
NLSRTL Version 9.2.0.6.0 - Production    

select to_char(nvl(6,0),'000000000000000.0000') from dual
Query finished, retrieving results...
TO_CHAR(NVL(6,0),'000000000000
------------------------------
000000000000006.0000          

1 row(s) retrieved

select to_char(nvl(null,0),'000000000000000.0000') from dual
Query finished, retrieving results...
TO_CHAR(NVL(NULL,0),'000000000
------------------------------
000000000000000.0000          

1 row(s) retrieved

Дело в 'zn'?


ANB   (2006-09-06 12:10:00) [16]


> В чем может быть дело ?

Проверь настройки NLS_LANG на своем клиенте и настройку языка базы. На всякий случай. И, чувствую, нафигатор отсебятину влепил.


evvcom   (2006-09-06 11:56:00) [17]

У меня в PL/SQL Developer работает :)
А нафигатора я тоже не люблю почему-то. Может потому что толком не работал в нем :) ?


ANB   (2006-09-06 11:51:00) [18]

Выкини на фиг свой нафигатор


Наверх

Титульная страница Поиск, карта сайта Написать письмо