powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как отключить NOTICE которое выдается при создании первичного ключа?
11 сообщений из 11, страница 1 из 1
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34100151
victor_kr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При создании первичного ключа СУБД выдает сообщение об автоматическом (неявном) создании индекса для этого ключа. При использовании libpqxx для подключения к базе данных это сообщение некорректно обрабатывается на клиенте и возникает исключение. Есть ли возможность отключить именно это сообщение не отключая остальные NOTICE? Или может быть есть какие-то особенности, настройки при работе с libpqxx? Спасибо.
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34103581
Алексей Ключников
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоже интересно, присоединяюсь к вопросу.

И можно ли создавать этот индекс явно?
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34103779
victor_kr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В своей задаче проблему решил вот так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
set client_min_messages = 'warning';

create table test1
(
id serial, 
name varchar( 50 ),
constraint pk_test1 primary key (id)
);

drop table test1;

set client_min_messages = 'notice';

Скорее всего, автоматическое создание индекса по первичному ключу отключать нельзя. Наверное, это правильно.
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34103812
st_serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
создавать индекс для первичного ключа явно?
create table ...
create index ...
alter table add constraint ...
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34103840
victor_kr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если выполнить скрипт:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
create table test1
(
id serial, 
name varchar( 50 )
);

create index pki_test1 on test1 using btree (id);

alter table test1 add constraint pk_test1 primary key (id);

drop table test1;

, то все равно будут выданы сообщения:

NOTICE: CREATE TABLE will create implicit sequence "test1_id_seq" for serial column "test1.id"
NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index "pk_test1" for table "test1"

А нужно, что бы их не было. С последовательностью все понятно, ее можно создать явно. С индексом так не получается.
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #34103869
st_serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя наврядли это поможет

One should, however, be aware that there's no need to manually create indexes on unique columns; doing so would just duplicate the automatically-created index.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как отключить NOTICE которое выдается при создании первичного ключа?
    #35026366
4_Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
victor_krПри создании первичного ключа СУБД выдает сообщение об автоматическом (неявном) создании индекса для этого ключа. При использовании libpqxx для подключения к базе данных это сообщение некорректно обрабатывается на клиенте и возникает исключение. Есть ли возможность отключить именно это сообщение не отключая остальные NOTICE? Или может быть есть какие-то особенности, настройки при работе с libpqxx? Спасибо.

Хочу поднять опять этот топик, так как CREATE TABLE.... с первичным ключём выкидывает нотайс, который хотелось бы отключить, просто отключить чтобы он незасорял лог.

как я понял exception обрабатывает всё что угодно но только не NOTICE, есть варианты?
Заранее спасибо за помощь.
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #35026608
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4_AlexCREATE TABLE.... с первичным ключём выкидывает нотайс, который хотелось бы отключить, просто отключить чтобы он незасорял логотключите логирование всех NOTICE

в postgresql.conf
log_min_messages = warning
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #35030874
4_Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LeXa NalBat 4_AlexCREATE TABLE.... с первичным ключём выкидывает нотайс, который хотелось бы отключить, просто отключить чтобы он незасорял логотключите логирование всех NOTICE

в postgresql.conf
log_min_messages = warning

Дело в том что так не годиться, у меня много сообщения специально выведены в нотайсы. Нужно именно в хранимой функции отключить их в момент выполнения криейт, а потом оять включить.
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #35033434
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4_AlexДело в том что так не годиться, у меня много сообщения специально выведены в нотайсы. Нужно именно в хранимой функции отключить их в момент выполнения криейт, а потом оять включить.разве не именно это написал victor_kr выше ?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
seb=> create function ttt() returns void as $$begin
    set client_min_messages = 'warning';
    raise notice 'this message not show'; --- like create table
    set client_min_messages = 'notice';
    raise notice 'this message show';
end;$$ language plpgsql;
CREATE FUNCTION
seb=> select ttt();
NOTICE:  this message show
 ttt
-----

( 1  запись)
...
Рейтинг: 0 / 0
Как отключить NOTICE которое выдается при создании первичного ключа?
    #35033460
av1985
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
victor_kr

NOTICE: CREATE TABLE will create implicit sequence "test1_id_seq" for serial column "test1.id"
NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index "pk_test1" for table "test1"

А нужно, что бы их не было. С последовательностью все понятно, ее можно создать явно. С индексом так не получается.


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
create table test1
(
id int not null default nextval('...'), 
name varchar( 50 )
);

create unique index pki_test1 on test1 using btree (id);
А чем это не устраивает?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как отключить NOTICE которое выдается при создании первичного ключа?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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