Varchar2 и Oracle быстрый вопрос - PullRequest
2 голосов
/ 26 апреля 2010

Привет, ребята, я использую varchar2 для поля имени продукта, но когда я запрашиваю базу данных из командной строки запуска SQL, она показывает слишком много пустых мест, как я могу это исправить, не меняя тип данных

вот ссылка на сс

http://img203.imageshack.us/img203/20/varchar.jpg

Ответы [ 3 ]

1 голос
/ 26 апреля 2010

Данные, которые были вставлены в базу данных (вероятно, через какой-либо процесс ETL), имели пробелы, которые не были обрезаны.

Вы можете обновить, используя (псевдокод)

Update Table Set Column = Trim(Column)
0 голосов
/ 03 марта 2014

Привет

Попробуйте использовать отделку с обеих сторон,
Обновить имя таблицы SetName = RTrim (LTrim (FieldName))

Привет

0 голосов
/ 26 апреля 2010

Если TRIM не изменяет результаты, это говорит о том, что в фактических строках базы данных нет пробелов; они просто добавляются как часть форматированного вывода на экран.

По умолчанию sqlplus (инструмент Oracle командной строки, который вы используете) использует максимальную длину столбца varchar2 в качестве (фиксированной) ширины при отображении результатов оператора select.

Если вы хотите изменить это, используйте команду column format sqlplus перед выполнением выбора. Например:

column DEPT_NAME format a20
...