Здравствуйте.
Ситуация такова: имеется сложная структура БД, много десятков таблиц, связей разных типов.
Необходимо данные из нескольких таблиц перенести в такие же таблицы с такими же связями.
Но дело в том, что связи по первичным ключам, а они генерируются СУБД автоматически перед вставкой записи в БД.
Необходимо написать хранимую процедуру, которая сможет это всё сделать.
Даже не знаю с чего начать.
Может есть какие-то идеи у кого-то как это организовать?
Уже второй день пытаюсь записать картинки в базу постгрес. Один из способов. Тип данных колонки в которой хранятся данные bytea
image = Новый COMОбъект("ADODB.Stream");
image.type = 1;
RecordSet = Новый COMОбъект("ADODB.Recordset");
RecordSet.CursorLocation = 3;
RecordSet.ActiveConnection = Connection;
RecordSet.Open("Select * FROM images",Connection,3,2);
RecordSet.AddNew();
image.Open();
image.LoadFromFile("C:\database\1.jpg");
RecordSet.Fields("image").Value = image.Read(); // здесь ошибка
RecordSet.Update();
RecordSet.Close();
Как правильно сделать чтоб записать картинку.
Вопрос по внутренностям Postgres.
Здравствуйте. Сейчас занимаюсь синхронизацией баз постгрес на разных машинах и дошло до того, что, видимо, придется разбираться с особенностями работы на низком уровне.
Версия СУБД - 7.4.1, без возможности обновления в обозримом будущем. ОС - кастомная сборка Linux.
Что сделано.
postgresql 9.0
ОС windows server 2008 R2 SP1 озу 8 GB тип системы 64 bit
при выполнении vacuumlo выходит ошибка:
failed to remove lo error current transaction is aborted, commands ignored until end of transaction block
Подскажите, пожалуйста, как можно избежать?
Только недавно стала работать с этой базой, подскажите, пожалуйста как узнать предыдущие значения в таблице и кто их изменил. В MS SQL данные перед обновлением триггером сохранялись в др. таблицу, здесь сказали что есть встроенные логи. Как разобраться?
Привет, форумчане! Только прошу сразу не смеяться над вопросом: есть ли схема работы отказоустойчивого кластера PostgreSQL на базе windows 2012?
Более подробно: есть 4-е windows 2012 (сносить нельзя))) - на них необходимо организовать кластер СУБД. Денег на MS SQL уже нет (
В текущем виде вижу только вариант поставить рядом Redhat, на него поставить pgpool-ll и к нему подключить два PostgreSQL (СУБД ставятся на Windows-сервера).
Заранее спасибо за внимание!
думал они будут выложены организаторами в онлайн, но увы...
он также упоминал что презентация была сделана из некоего текста ...в котором было больше полезной информации, он был бы предпочтительней.
В таблице дата хранится в формате timestamp и может содержать не только дату но и часы.
Делаю выборку количества по дням
SELECT
to_char(data1, 'DD.MM.YYYY') as d1,
COUNT( DISTINCT fio)
FROM
t1
WHERE .......
GROUP BY d1
Все работает ка надо, но даты в разнобой
Пытаюсь добавить сортировку
ORDER BY to_date(d1,'DD.MM.YYYY')
и получаю ответ - ОШИБКА: колонка "d1" не существует
Хотя просто ORDER BY d1
работает но результат, естественно не тот.
В чем ошибка?
Возникла странная ситуация с сортировкой по полю timestamp и с получением unix timestamp
Добрый день.
Возможно ли средствами SQL вытащить такое:
Есть 2 таблицы. Во второй есть столбец, где каждому значению из 1-й может соответсвовать одно или несколько значений или вообще нет соответствия.
Делаю запрос, сливают таблицы LEFT JOIN, потом группирую GROUP BY, чтобы получить по одному значению из таблицы 1. Но желательно вытащить и те данные, которых в таблице 2 больше одного, причем в одну ячейку результата.
Например:
Табл.1
1.Иванов
2.Петров
3.Сидоров
Табл.2
1.Завсклад
1.Товаровед
2.Дворник
Нужен результат:
Иванов - Завсклад, Товаровед
Петров - Дворник