Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Документация PL/pgSQL / 10 сообщений из 10, страница 1 из 1
17.07.2020, 13:04
    #39980897
Jack963
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Здравствуйте, сейчас читаю документацию, там есть пример:
Добавление в таблицу первичного ключа с автоматическим именем (учтите, что в таблице может быть только один первичный ключ):
ALTER TABLE distributors ADD PRIMARY KEY (dist_id);

Возник вопрос, что значит с автоматическим именем?
...
Рейтинг: 0 / 0
17.07.2020, 13:28
    #39980911
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Jack963,

То есть название этого constraint и нижележащего индекса будет сгенерировано базой, а не указано пользователем.
...
Рейтинг: 0 / 0
17.07.2020, 13:38
    #39980917
Jack963
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Melkij,

Спасибо
...
Рейтинг: 0 / 0
17.07.2020, 18:14
    #39981077
Jack963
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Melkij, а есть ли индексные таблицы в PL/pgSQL ?
...
Рейтинг: 0 / 0
17.07.2020, 18:24
    #39981080
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Jack963,

Есть массивы составных типов.
...
Рейтинг: 0 / 0
17.07.2020, 18:26
    #39981081
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Jack963
Melkij, а есть ли индексные таблицы в PL/pgSQL ?


IOT которые? нет нету...
в теории можно covering index со всеми колонками сделать который для readonly будет почти тоже самое что IOT (только места в 2 раза больше занимать).
...
Рейтинг: 0 / 0
17.07.2020, 18:28
    #39981082
Jack963
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Павел Лузанов,
Подскажите, пожалуйста, как тогда эта чать кода будет выглядеть в PL/pgsql:
DECLARE
--вводимая строка
type word is table of
varchar(200)
index by integer;
str_word word;--таблица для слов из строки
str word;--таблицв для всех фраз
str2 word;--таблица для всех повторяющихся фраз в строке
str3 word;--таблица для самых длинных повторяющихся фраз
...
Рейтинг: 0 / 0
17.07.2020, 18:32
    #39981085
Jack963
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Просто мне нужно переделать задачу из PL/SQL в PL/pgSQL, а все ее решение основано на индексных таблицах
Jack963
Павел Лузанов,
Подскажите, пожалуйста, как тогда эта чать кода будет выглядеть в PL/pgsql:
DECLARE
--вводимая строка
type word is table of
varchar(200)
index by integer;
str_word word;--таблица для слов из строки
str word;--таблицв для всех фраз
str2 word;--таблица для всех повторяющихся фраз в строке
str3 word;--таблица для самых длинных повторяющихся фраз
...
Рейтинг: 0 / 0
17.07.2020, 18:40
    #39981087
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Jack963,

+/- так, а дальше в документацию по работе с массивами:
Код: sql
1.
2.
3.
postgres=# do $$declare s varchar(200)[]; begin s := '{a}'; s := s || '{b}'; raise notice 'Cardinality: %, s[1]: %, s[2]: %', cardinality(s), s[1], s[2]; end;$$;
NOTICE:  Cardinality: 2, s[1]: a, s[2]: b
DO
...
Рейтинг: 0 / 0
17.07.2020, 18:51
    #39981090
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Документация PL/pgSQL
Но это если у вас индекс всегда числовой.
Для ассоциативных массивов (index by varchar2) с массивами не получится.
Для них возможно стоит json использовать. На самый крайний случай - временные таблицы.

А вообще, переделка - повод для рефакторинга, может можно обойтись и без массивов, и без таблиц.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Документация PL/pgSQL / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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