powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Insert db2
4 сообщений из 4, страница 1 из 1
Insert db2
    #37983639
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Помогите пожалуйста!

Делаю,
1)
Код: sql
1.
2.
alter table MACRORATESITEMS
alter column scaption set data type varchar(50);


2)
Код: sql
1.
reorg table MACRORATESITEMS;


3)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
insert into MACRORATESITEMS 
(IDRATEITEM, SCAPTION) 
VALUES 
(1, 'Среднедушевой доход'),
(2, 'Индекс Потребительских Цен'),
(3, 'Численность населения'),
(4, 'Внутренняя миграция прибыло'),
(5, 'Внутренняя миграция выбыло'),
(6, 'Внешняя миграция прибыло'),
(7, 'Внешняя миграция выбыло'),
(8, 'Валовый Региональный Продукт'),
(9, 'Пассажиропоток автотранспорт'),
(10, 'Пассажирооборот автотранспорт');



Получаю,
DB2 Database Error: ERROR [23505] [IBM][DB2/LINUXX8664] SQL0803N One or more values in the INSERT statement, UPDATE statement, or foreign key update caused by a DELETE statement are not valid because the primary key, unique constraint or unique index identified by "1" constrains table "WHDATA.MACRORATESITEMS" from having duplicate values for the index key. SQLSTATE=23505


В чем причина?

Спасибо!
...
Рейтинг: 0 / 0
Insert db2
    #37983651
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadipok,

Ой не то, это уже при повторном запуске, а при первичном выходит такая ошибка.
Statusbar: 04.10.2012 16:23:55: DB2 Database Error: ERROR [22001] [IBM][DB2/LINUXX8664] SQL0433N Value "Внутренняя миграция прибыло" is too long. SQLSTATE=22001
...
Рейтинг: 0 / 0
Insert db2
    #37983690
vadipok,

Если таблица в многобайтной кодировке(UTF, Unicode), то все логично.
Размер символьной колонки задается в байтах.
А один символ в многобайтной кодировке может занимать несколько байт, что необходимо учитывать при дизайне таблицы.
В UTF-8 указанная строка "Внутренняя миграция прибыло" будет занимать 52 байта, т.к. каждый символ кириллицы будет занимать два байта (25 кириллицы + 2 пробела).
...
Рейтинг: 0 / 0
Insert db2
    #37983723
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений Хабаровvadipok,

Если таблица в многобайтной кодировке(UTF, Unicode), то все логично.
Размер символьной колонки задается в байтах.
А один символ в многобайтной кодировке может занимать несколько байт, что необходимо учитывать при дизайне таблицы.
В UTF-8 указанная строка "Внутренняя миграция прибыло" будет занимать 52 байта, т.к. каждый символ кириллицы будет занимать два байта (25 кириллицы + 2 пробела).

Спасибо коллега, помогли.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Insert db2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]