Вопросы по SQL и другие аспекты работы PostgreSQL

warning: Creating default object from empty value in /var/www/victor/web/pgdocs.ru/data/modules/taxonomy/taxonomy.pages.inc on line 33.
Здесь обсуждаются запросы на SQL в PostgreSQL. Оптимизация запросов, реализация, подходы и т.д.

Tree

Подскажите как решить задачку. Необходимо вывести структурное меню (типа tree). Имеются таблицы первого и второго уровней, с обозначениями (id, id_parent). Как можно вывести такое меню с возможностью перехода к нужной таблице посредством PHP? Я понимаю что это вопрос можно охарактеризовать как вопрос по PHP, но ни на одном форуме по PHP я не смог найти нужную информацию. Помогите разобраться в проблеме.

Как удалить битые ссылки?

Здраствуйте.
В postgresql запросам не очень силен.Хотелось бы узнать, можно сделать следующее (с помощью запроса или скрипта)

Есть допустим табл Т1 у которой есть поле Р (bytea), которое имеет составной тип,т.е. может быть ссылкой на различные таблицы (Т2,Т3,Т4 и.т.д.).Если допустим в табл Т2 удалили запись , то в табл Т1 в поле Р останется запись на не сушествующую запись, нужно теперь почистить эту запись.Проблема в том что поле Р имеет составной тип :(

Я думаю что нужно сделать что-то типо этого или я не прав, может есть более оптимальный способ?

DELETE
FROM T1

Отвязался PostgreSQL

Доброго времени суток!
Столкнулся с такой бедой: переустановил ОС-Vista. Программа Pokertracker-3 не нашла PostgreSQL 8.3(обе были заблаговременно установлены на диск D). Дай, думаю, переустановлю Pokertracker-3, а поскольку pSQL устанавливается автоматичеки, дал тот же адрес на диске D. Ан нет, откатило меня назад, говорит есть у вас эта база. Да вот только не хочет меня привязать никак. Что же делать озадаченному гуманитарию? Спасибо за возможную помощь!

merge into

Есть ли в постгре команда merge into ... ?

Default параметры функции

Здравствуйте.
Работаю на Postge 8.4.2 под Windows.
Создаю функции с помощью pgAdminIII, например:
CREATE OR REPLACE FUNCTION get_bal(integer, integer default null, date default null, date default null, integer default null) RETURNS double precision AS
...
компилю - нормально, вызываю, т.е.использую функцию - нормально. Но когда снова открываю текст функции на pgAdminIII параметры функции "съезжают", преобразуются:
CREATE OR REPLACE FUNCTION get_bal(integer, integer DEFAULT NULL::integer, date, date DEFAULT NULL::date, integer) RETURNS double precision AS
...

проблема с copy

Изображение Useful

Здравствуйте, создал макет проекта в case studio, залил в Postgre в ходе проектной работы, было добавлено несколько записей в несколько таблиц (примерно 300). Подошел к тому моменту, когда нужно изменить первичную модель проекта, сделал все необходимые изменения в кейсе, но заливать в базу не стал, т.к. в сгенерированном скрипте есть строки, которые сначала удаляют все таблицы, а потом заливает полностью всю структуру заново. Хотелось бы не потерять записи, которые уже были сделаны.

php + хранимые процедуры

Подскажите пожалуйста ламеру, как из пхп обратитьсяк хранимой процедуре и получить из неё данные?
Буду рад ссылкам на полезный материал по теме)

формат даты

установлены два сервера PostgreSQL один сервер на платформе Линукс, другой на платформе Windows. Базы на обеих серверах установлены совершенно одинаковые. Я из программы должен динамически переключаться от одного сервера к другому.

На линукс сервере такой формат даты: ... where "SkladMeteriala"."DATEPOSTNASKLAD" = '04/15/2009'
На windows сервере такой формат даты: ... where "SkladMeteriala"."DATEPOSTNASKLAD" = '2009/04/15'

Какими средствами можно упорядочить дату, чтобы формат даты был всегда один и тот же?
Посоветуйте пожалуйста.

чтобы всегда был формат такой: '04/15/2009'

Конфликт последовательности ключа и правила ON INSERT

Имеется таблица с автонумерацией первичного ключа:

CREATE SEQUENCE sq_test_id
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 65535
  START 1
  CACHE 1;
 
CREATE TABLE test (
  id integer NOT NULL DEFAULT NEXTVAL('sq_test_id'::regclass),
  "name" character varying(60),
  CONSTRAINT test_id PRIMARY KEY (id)
)

Во избежание ошибок дублирования ключа id при вставке задано правило:
CREATE OR REPLACE RULE test_insert AS
  ON INSERT TO test
  WHERE (EXISTS ( SELECT id
           FROM test
          WHERE id = new.id))
  DO INSTEAD
    UPDATE test

Создание удаленной копии рабочей базы на PostgreSQL

Имеется 4 локальные базы данных, работающие независимо. Сервера находятся на достаточно большом расстоянии и канал периодически обрывается.
Необходимо обеспечить на отдельном сервере резервные копии каждой базы.
Хотелось бы получить совет и может быть кто-нибудь решал похожую задачу.

Собранный материал

Back to top

(С) Виктор Вислобоков, 2008-2023