Сколько байтов использует Oracle для хранения одного символа? - PullRequest
8 голосов
/ 17 мая 2010

Я пытался посмотреть здесь:

http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/datatype.htm#i3253

И я понимаю, что я должен предоставить длину строки для столбца, я просто не могу узнать, сколько байтов оракул использует при хранении символа. Мой лимит составляет 500 символов, поэтому если его 1 байт / символ, я могу создать столбец с 500, если его 2 байта / символ 1000, и т. Д.

Кто-нибудь имеет ссылку на документацию или знает наверняка?

В случае, если это имеет значение, SQL вызывается из PHP, поэтому это строки PHP, которые я вставляю в базу данных. Благодаря.

Ответы [ 3 ]

16 голосов
/ 17 мая 2010

количество байтов, необходимое для хранения символа, будет зависеть от набора символов. Если вы хотите сохранить 500 символов и не знаете набор символов целевой базы данных, вы должны создать столбец (или переменную) как VARCHAR2 (500 CHAR ) или CHAR (500 CHAR *). 1004 *).

4 голосов
/ 17 мая 2010

Простой CHAR не обязательно является одним байтом, в зависимости от настройки NLS_LENGTH_SEMANTICS.

См. Oracle Справочник по языку SQL в качестве отправной точки. Если вам нужно углубиться, взгляните на Oracle Руководство по поддержке глобализации .

0 голосов
/ 17 мая 2010

Один символ занимает 1 байт.

Попробуйте здесь:

http://ss64.com/ora/syntax-datatypes.html

...