Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как редактировать таблицу? / 8 сообщений из 8, страница 1 из 1
11.10.2006, 17:09
    #34048213
RIDD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
Добрый день!
Обрисую проблему, есть таблица,
один столбец всегда преставляет собой следующие значения -
0 1 2 3 4 5 6 и тд...
иногда мне приходиться какую то строку из этой таблицы удалять..

то есть по тому столбцу получается допустим 0 1 2 4 5 6 (с 3 кой удалили)

мне необходимо написать скрипт который по возростанию записей
отредаткировал соответсвенно 0 1 2 3 4 5

Как мне это сделать, подскажите пожалуйста!
...
Рейтинг: 0 / 0
11.10.2006, 17:38
    #34048332
Hordi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
В триггере на удаление:

UPDATE x_table SET id=id+1 WHERE id>OLD.id;
...
Рейтинг: 0 / 0
11.10.2006, 17:39
    #34048337
Hordi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
т.е.
UPDATE x_table SET id=id-1 WHERE id>OLD.id;
...
Рейтинг: 0 / 0
11.10.2006, 18:23
    #34048475
RIDD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
спасибо за ответ! хоть не много света на проблему..

вот только с тригеррами косяк... я их не далал, как его заводить.
работаю в PGadmin3 , не получается создать новый триггер...
что для этого нужно?
и как он связывается с таблицей?
...
Рейтинг: 0 / 0
12.10.2006, 09:12
    #34049145
ZemA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
...
Рейтинг: 0 / 0
12.10.2006, 10:04
    #34049269
RIDD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
Извините, что туплю...

я так понял, что предварительно надо создать функцию..
пробую делать визуально то есть через PGAdmin.
туда вставляю UPDATE x_table SET id=id-1 WHERE id>OLD.id;

вызывается ошибка ругается на OLD..

CREATE FUNCTION func() RETURNS online AS
'UPDATE online SET id=id-1 WHERE id>OLD.id;'
LANGUAGE 'sql' VOLATILE;
ALTER FUNCTION func() OWNER TO postgres;
GRANT EXECUTE ON FUNCTION func() TO public;

почему надо в return что то вставлять.. может функция ничего не возвращает?
...
Рейтинг: 0 / 0
12.10.2006, 10:21
    #34049351
RIDD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
Извините, что туплю...

я так понял, что предварительно надо создать функцию..
пробую делать визуально то есть через PGAdmin.
туда вставляю UPDATE x_table SET id=id-1 WHERE id>OLD.id;

вызывается ошибка ругается на OLD..

CREATE FUNCTION func() RETURNS online AS
'UPDATE online SET id=id-1 WHERE id>OLD.id;'
LANGUAGE 'sql' VOLATILE;
ALTER FUNCTION func() OWNER TO postgres;
GRANT EXECUTE ON FUNCTION func() TO public;

почему надо в return что то вставлять.. может функция ничего не возвращает?
...
Рейтинг: 0 / 0
12.10.2006, 16:22
    #34051196
ZemA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как редактировать таблицу?
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как редактировать таблицу? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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