2016-02-01 5 views
1

Мы хотим установить этот SET NUMFORMAT 99999999999999999.00 на уровне пользователя/схемы для всех сеансов. В настоящее время при настройке этой команды он применяется только для этого сеанса. Можем ли мы сделать это во всем мире, так что, когда мы когда-либо открыть соединение, это работает>Oracle Настройка среды поддержки глобализации

+0

Это настройка клиента. Какой клиент? Если SQL \ * Plus и всегда работает с одного и того же компьютера, то вы можете, например, через login.sql/glogin.sql; другие клиенты могут это позволить. Но это относится ко всем числам - лучше включить форматирование в запрос, чтобы оно было специфичным и соответствовало каждому значению - если вы хотите получить строковое представление, укажите, как вы хотите, чтобы оно выглядело. Но только для отображения и запуска приложения запрос должен вернуть фактическое число, и он должен решить, как его отображать. –

ответ

0

SET NUMFORMAT является SQL * Plus команды. В общем, это клиентская сторона установка на дисплей номер.

Вы всегда можете сохранить настройки SQL*Plus в login.sql и glogin.sql. Когда начинается SQL*Plus, он ищет файл с именем glogin.sql под каталогом $ORACLE_HOME/sqlplus/admin. Если такой файл найден, он считывается и исполняемые операторы выполняются. Кроме того, после чтения glogin.sql sql * plus также ищет файл с именем login.sql в каталоге, из которого SQL*Plus был и в каталоге, который указывает на переменную среды SQLPATH и читает ее и выполняет ее. Настройки из login.sql имеют приоритет над настройками из glogin.sql.

Если вы только отображение числа, и хотите, чтобы она будет отображаться в нужном формате, а затем использовать TO_CHAR на уровне оператора индивидуальный SQL.

Например,

SQL> select to_char(123.456,'999.9') VALUE from dual 
    2/

VALUE 
------ 
123.5 

Bottomline, это SQL*Plus команды, а не Oracle, SQL- или PL/SQL команды. Это повлияет только на то, как данные отображаются с SQL*Plus, а не из других программ, которые обращаются к базе данных. Должно быть что-то подобное в том, что вы используете для отображения ваших данных, а не SQL*Plus.

+0

Тогда любое предложение о команде на базе Oracle? – user2354566

+0

Я хочу сделать такие общие настройки, а затем войти в систему, а затем вставить в таблицу команду. – user2354566

+0

Вставка инструкции не имеет никакого отношения к форматированию. Oracle хранит числа переменной длины. Он не сохраняется так, как вы видите, когда отображается на клиенте. Поэтому не нужно беспокоиться о форматировании при вставке. Вам просто нужен формат во время отображения, на который я уже ответил. –

Смежные вопросы