Текущее время: Чт, май 08 2025, 02:14

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ! Прежде чем задавать вопрос, ознакомьтесь со ссылками ниже:

Вопросы по отличиям версий SAP, Add-On, EHP - сюда
Вопросы по SAP Front End (SAPlogon, SAPgui, guiXT и т.д.) - сюда
Вопросы по LSMW - сюда
Вопросы по архивации в SAP - сюда
Вопросы по SAP GRC - сюда
Вопросы по SAP Business Workplace (почте SAP) и SAP Office - сюда
Вопросы по miniSAP (SAP mini basis) - сюда
Вопросы по SAP HANA - сюда
Вопросы по лицензированию продуктов SAP - сюда



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: 3 байта на символ
СообщениеДобавлено: Пн, мар 16 2009, 15:29 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, май 26 2005, 11:36
Сообщения: 651
Откуда: Киев-Москва
Коллеги.
На BW7.0 смотрел в se11 как фактически выглядят таблицы в БД в сравнении с тем, что определено в словаре. Получается, что для всех строковых типов происходит затроение длины строки. Скажем тип определенный, как CHAR100 в Oracle создаётся как VARCHAR2 300. То есть длина строки утраивается. Я понимаю, что unicode может занимать до 4-х байт, но почему 3? В 2 байта можно всё поместить. Зачем третий байт?

_________________
Рисую потоки данных.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 3 байта на символ
СообщениеДобавлено: Вт, мар 16 2010, 14:22 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, май 26 2005, 11:36
Сообщения: 651
Откуда: Киев-Москва
Хочу поднять этот топик вверх.
При просмотре в SQL навигаторе тексты просматриваются нормально. То есть unicode ни при чем.
Поэтому повторю вопрос - почему SAP утраивает длину varchar2 полей?

_________________
Рисую потоки данных.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 3 байта на символ
СообщениеДобавлено: Вт, мар 16 2010, 14:39 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пт, ноя 02 2007, 14:14
Сообщения: 86
Откуда: Minsk
In Unicode systems, the length of VARCHAR2 fields in bytes in the database is three times longer than the length defined in SAP DDIC. The SAP system already takes this into account when creating tables and VARCHAR2 fields.

http://www.interface.ru/home.asp?artId=23573

Нота https://service.sap.com/sap/support/notes/606359
Since byte semantics is active by default (NLS_LENGTH_SEMANTICS = BYTE), you must specify the maximum number of possible bytes instead of the maximum number of characters when you create VARCHAR2 columns. For this reason, the SAP Data Dictionary automatically triples the specified string length when you create columns on the database (for example SE11 -> string length 12; Oracle level -> Column length 60).

Но это еще не предел :) Может и в девять раз увеличивать (https://service.sap.com/sap/support/notes/1412123).


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB