Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Load kills my tablespace / 3 сообщений из 3, страница 1 из 1
04.05.2009, 17:23
    #35967480
I_love_MSDN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Load kills my tablespace
Есть табличка:

Код: plaintext
1.
2.
3.
CREATE TABLE "KILLTBS"."KILLERTBS2" (
  "A" INT
) ;

Добавляю туда данные:
Код: plaintext
1.
2.
INSERT INTO "KILLTBS"."KILLERTBS2"   ("A") VALUES ( 10 );
INSERT INTO "KILLTBS"."KILLERTBS2"   ("A") VALUES ( 11 );

Нужно изменить тип колонки на VARCHAR(50), с условием сохранения данных:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
EXPORT TO
  '%DATA_PATH%\KILLTBS_KILLERTBS21006282393.ixf'
  OF IXF 
  SELECT * FROM "KILLTBS"."KILLERTBS2";

DROP TABLE "KILLTBS"."KILLERTBS2";

CREATE TABLE "KILLTBS"."KILLERTBS2" (
  "A" VARCHAR( 50 )
) 
  IN "TBS";

ALTER TABLE "KILLTBS"."KILLERTBS2"
  DATA CAPTURE NONE
  LOCKSIZE ROW
  APPEND OFF
  NOT VOLATILE;

ALTER TABLE "KILLTBS"."KILLERTBS2"
  ACTIVATE NOT LOGGED INITIALLY;

COMMIT;

LOAD CLIENT FROM '%DATA_PATH%\KILLTBS_KILLERTBS21006282393.ixf'
  OF IXF 
  INSERT INTO KILLTBS.KILLERTBS2(
    A
    )
 INDEXING MODE REBUILD 
 ALLOW NO ACCESS;

COMMIT;

В итоге получаю аутпут от утилиты вот такой:
Код: plaintext
SQL3168W  The PC/IXF column specified to be loaded into database column "0" is not compatible with the database column.  Nulls will be inserted

Но скрипт прокатывает, забивая туда нули. Далее, мой tablespace становится в статус BACKUP. И я ничего не могу поделать с ним (дропнуть таблицу, добавить в таблицу и т.д.)

Как мне его восстановить-то в нормальный режим? db2stop db2start подвисають =(

- Абсолют' ный
-посковый робот по MSDN для
- ленивых
...
Рейтинг: 0 / 0
04.05.2009, 18:05
    #35967590
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Load kills my tablespace
I_love_MSDN,

1. Чтобы табл. пр-во после load не становилось в backup pending state, надо делать load с опциями NONRECOVERABLE или COPY YES.
2. Если оно стало в такое состояние, то надо сделать архив этого пр-ва командой backup.
3. Если вам данные в поле всё же надо преобразовать, а не забить нулями, то надо:
Код: plaintext
1.
2.
3.
EXPORT TO
  '%DATA_PATH%\KILLTBS_KILLERTBS21006282393.ixf'
  OF IXF 
  SELECT rtrim(char(A)) A FROM "KILLTBS"."KILLERTBS2";
4. Что пишется в db2diag.log при подвисании db2stop/db2start?
...
Рейтинг: 0 / 0
07.05.2009, 13:55
    #35974436
I_love_MSDN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Load kills my tablespace
Спасибо за кастинг типов. Про бэкап уже прочитал и проделал, помогло - спасибо большое. С логами все будет сложно =(
- Абсолют' ный
-посковый робот по MSDN для
- ленивых
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Load kills my tablespace / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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