Вопросы по 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. Оптимизация запросов, реализация, подходы и т.д.

ПОМОГИТЕ. с Нарушение параллелизма:

MS2010 ultim+C#+npgsql

выдает такую ошибку, при изменении строки. добавление и удаление строк проходят без ошибок.
Нарушение параллелизма: UpdateCommand затронула 0 из ожидаемых 1 записей.

da = new NpgsqlDataAdapter("select * from \""+table+"\"", conn);
ds = new DataSet();
nCA.pilotInsertDeleteUpdate(da, conn);
da.Fill(ds);
return ds.Tables[0];
...........

Помогите с Запросом!

Значит задача такая: Написать запрос, который выводит суммы баллов всех студентов для каждой даты сдачи экзаменов и представляет результаты в порядке убывания этих сумм.
Я написал запрос который выводит все и оценку и дату:
SELECT
"EXAM_MARKS"."Exam_date",
"EXAM_MARKS"."Mark"
FROM
public."EXAM_MARKS",
public."STUDENT",
public."SUBJECT"
WHERE
"EXAM_MARKS"."Student_id" = "STUDENT"."Student_id" AND
"EXAM_MARKS"."Subj_id" = "SUBJECT"."Subj_id"
order by "EXAM_MARKS"."Mark" DESC;

Trigger

Есть таблица invest_proektu, которая содержит названия проектов, областьи приминения, объем инвестиций,срок возврата инвестиций, срок реализации инвестиций. А также создана таблица pobeditely, в которую были помещены инвестиционные проекты по конкретной области приминения с миним. показателем: объем инвестиций/срок возврата инвестиций.
Нужно создать триггер, который при внесении изменений или добавлении новой записи в invest_proektu изменит содержимое pobeditely(т.е. пересчитает новый показатель)
Вот что я пыталась сделать:
CREATE FUNCTION Insert_Inv () RETURNS trigger AS $$
BEGIN

Возвращение результатов

Подскажите, пожалуйста, следующую вещь. У меня есть скрипт создающий пользователя, базу данных и таблицы этой БД. Скрипт нормально отрабатывает (т.е. удаляет пользователя, существующую БД и создает все заново), но есть момент, который нужно учесть. А именно, когда в одной консоли запускается этот скрипт, а в это же время в системе уже существует соединение с этой БД, то скрипт естественно завершается ошибкой. Этот скрипт должен будет запускаться из приложения на питоне, который должен в зависимости от результатов создания БД выполнить следующее действие.

Поднятие дампа

С помощью pgAdminIII сделал дамп с сервера freebsd 8.3.3, восстановливаю опять же пгАдмином на сервер 8.3.12 на винде серверной 2008 р2 интерпрайс. При восстановление выдаёт ошибку
C:\Program Files (x86)\PostgreSQL\8.3\bin\pg_restore.exe -h localhost -p 5432 -U postgres -d dogovor -v "C:\Users\user_dogovor\Downloads\dogovorUTF.backup"
pg_restore: [archiver] unsupported version (1.12) in file header
Адреса указаны правильно. Хотел обойти это использовав командную строку, но не знаю как прописать, что бы сохранилось всё в кодировке отличной от той что на сервере. Очень жду помощи

НЕ работает функция, помогите разобраться.

Значит создаю функцию которая вставляет запись в таблицу, по смыслу ыроде как правильно(могу ошибаться) но она не работает.
Сама функция:
-- Function: subject_insert(character varying, integer, integer, bigint)

-- DROP FUNCTION subject_insert(character varying, integer, integer, bigint);

CREATE OR REPLACE FUNCTION subject_insert(znach1 character varying, znach2 integer, znach3 integer, znach4 bigint)
RETURNS text AS
$BODY$BEGIN
INSERT INTO "SUBJECT"(
"Subj_name", "Hour", "Semester", "Subj_id")
VALUES (znach1, znach2, znach3, znach4);
END;$BODY$

Железные особенности POSTGRESQL

добрый день!
Мне хотелось бы прояснить такую вещь!!!
1. на сколько POSTGRESQL совместим с Windows Server 2008 x64?
2. Сможет ли СУБД использовать 4 процессора (Intel XEON) или она будет работать только на 1ом из них?
3. И сможет ли СУБД использовать более 16Гб оперативки?

Вопросы странные но надо прояснить что и как!
Заранее благодарен!

ERROR: relation "cel_id_seq" does not exist

Добрый день!
Тоже новичек в PosgreSQL. Нужно создать таблицу для работы с Asterisk PBX.
Делал по инструкции отсюда http://www.voip-info.org/wiki/view/Asterisk+config+cel_pgsql.conf, но получаю ошибку.
Что не верно ?

Ошибка SQL:
ERROR: relation "cel_id_seq" does not exist
В операторе:
CREATE TABLE cel
(
id integer NOT NULL DEFAULT nextval('cel_id_seq'::regclass),
eventtime timestamp with time zone NOT NULL DEFAULT now(),
eventtype character varying(80) NOT NULL DEFAULT ''::character varying,
userdeftype character varying(80) NOT NULL DEFAULT ''::character varying,

Помогите разобраться, пожалуйста!

Здравствуйте!
По работе мне пришлось столкнуться с Postgresql = с большими трудностями в его освоении. На форумах читаю, что сложного ничего нет. Я хорошо знаю MySQL, а к Postgres даже подконектиться не могу... Суть вот в чем: база установлена на серверной машине. Я создаю PHP вот такого простого вида:

<?php 
$db
=pg_connect("host=**** port=****** user=***** password=******* dbname=*****");
echo 
$db;
?>

Дальше на удаленном компе прописываю путь к файлу PHP (использую Internet Explorer) и вижу чистую страницу!
Ребята, помогите решить задачу! В чем может быть дело?
Спасибо!!!

Регистронезависимая коллация

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

Занимаясь реализацией упражнений на sql-ex.ru для PostgreSQL, столкнулся с тем, что база на хосте оказалась регистрозависимой. Админка не позволяет задать настройки. Поэтому я решил явно указать коллацию для текстовых столбцов типа

create table foo (col1 varchar(30) collate Latin1_General_CI_AS, ...)

В документации на 8.3 ничего подобного не нашел. На хосте стоит 8.4.
Есть такая возможность в PostgreSQL?

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

Back to top

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