|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Привет всем! Есть у меня такая структура БД. 6 таблиц. 1. TObject ( idObject BIGINT , name CHAR (254)) 2. TProperties ( idProperty BIGINT , name CHAR (254) , type CHAR (254)) 3. TType1Values ( idType1 BIGINT , value FLOAT ) 4. TType2Values ( idType2 BIGINT , value CHAR (254) ) 5. TType3Values ( idType3 BIGINT , value LONG VARCHAR ) 6. TObjectProperties ( idObject BIGINT , idProperty BIGINT, idValue BIGINT) В таблице TObjectProperties idObject->TObject.idObject idProperty->TProperties.idProperty idValue ( в зависимости от значения TProperties.type ) idValue->TType1Values.idType1 или idValue->TType2Values.idType2 или idValue->TType3Values.idType3 или просто значение BIGINT Вопрос. Какие функциональные елементы DB2 посоветуете розработать (SP , VIEW , FUNCTION ....) чтобы быстро, правильно и легко работать с такой структурой (INSERT, UPDATE, DELETE, SELECT). Буду рад любым предложениям. Заранее преблагодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2004, 14:01 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Неужели нету ни одной доброй души мне помочь? Или ето такая тяжелая задача? Или наоборот очень простая? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2004, 12:53 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Например, я могу написать такой VIEW чтобы потом используя его Код: plaintext 1. 2. 3.
заполнялись TObject с уникальним idObject и TProperties с idProperty .... Если да, то хотябы приблизительно подскажите где копать ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2004, 13:02 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
ну там еще можно просто зайти в утилитки там разные такие и наделать всеких нищтяков пользователям а если сильно извратнуться поставить IBM QMF так там еще и отчетиков можно понаклепать разных полезных и говарить что это все нужные фишки и пусти их все секут и юзают а то прям обидно становить ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2004, 13:23 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Okram: you see, it's a question of design, and as everything in design it depends... It depends from a lot of things, and your task is the primary (like what for it is all, what business task it carries) and so on, and so force... IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2004, 13:36 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Спасибо большое за советы, я обезательно их запомню и больше никогда не буду задавать таких вопросов!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2004, 11:02 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
you are welcome. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2004, 11:13 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
OkramНапример, я могу написать такой VIEW чтобы потом используя его Код: plaintext 1. 2. 3.
заполнялись TObject с уникальним idObject и TProperties с idProperty .... Если да, то хотябы приблизительно подскажите где копать ? При вставке зависит от того, как уникальные ид генерить. Я обычно делаю их через sequense: create sequence seq_nsi start with 1 increment by 1 no maxvalue no cycle cache 20; А дальше пишешь в процедуре: insert into .... (id1, id2, .....) values (nextval for seq_nsi, nextval for seq_nsi, ....) если нужно узнать, что за значения сгенерились, то set var_name = prevval for seq_nsi Вот. Генерить можно и из триггера не перед вставкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2004, 18:44 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
starting from v8.1.4 it's possible to use SELECT FROM INSERT to know inserted values. Useful, and simpler/safer then getting prevval. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2004, 18:53 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
ike При вставке зависит от того, как уникальные ид генерить. Я обычно делаю их через sequense: create sequence seq_nsi start with 1 increment by 1 no maxvalue no cycle cache 20; А дальше пишешь в процедуре: insert into .... (id1, id2, .....) values (nextval for seq_nsi, nextval for seq_nsi, ....) если нужно узнать, что за значения сгенерились, то set var_name = prevval for seq_nsi Вот. Генерить можно и из триггера не перед вставкой. спасибо за ответ, я так и делаю, но скорость меня неудовлетворяет:( ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2004, 19:49 |
|
Помогите правильно использовать DB2.
|
|||
---|---|---|---|
#18+
Записи (если нужно вставить большое число) надо вставлять пачками (напр., в CLI есть функции, работающие с массивами). ID для них тоже можно получать пачками (например, установив большой шаг приращения sequence и использовав промежуточные номера: create sequence seq_nsi start with 1 increment by 100 no maxvalue no cycle cache 200; и, получив 100, использовать 100,101,102...199; или increment by 1 и рекурсивный запрос) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2004, 23:33 |
|
|
start [/forum/topic.php?fid=43&gotonew=1&tid=1606209]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
164ms |
get topic data: |
10ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 264ms |
0 / 0 |