|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Здравствуйте, поставил PostgreSQL 13.3, сделал новую схему - TST, добавил путь: ALTER DATABASE "postgres" SET search_path = TST, public; - ошибок не выдало, сделал в TST таблицу, а при селекте - ругается ,что нет такой схемы. пытался дать права пользователю: GRANT ALL PRIVILEGES ON SCHEMA TST to postgres; тоже ругается, не видит схему. этот запрос схему видит: SELECT schema_name FROM information_schema.schemata WHERE schema_name = 'TST'; в PGAdmin схема видна, но как только какой запрос - все ,ругается - что может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:08 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33 этот запрос схему видит: SELECT schema_name FROM information_schema.schemata WHERE schema_name = 'TST'; Покажите результат этого запроса... И вот такого: Код: sql 1. 2. 3.
А еще лучше - точную команду создания схемы приведите... Сдается мне, где-то вы имя схемы в двойных кавычках указать умудрились ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:38 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
на перый запрос выдает: TST на второй: name setting search_path "$user", public а создавал не через скритп, а правой кнопкой мыша на схемы -> создать в pgadmin. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:45 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33, где-нить в недрах движка понимается, что TST это тестовая схема, и работа по ней прекращается :) Попробуйте дать другое название и сравните поведение. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:48 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Или ошибка в самом клиенте. Рецепт тот же: создать ещё две схемы. Одну через мастер клиента, другую руками скриптом. И сравнить, как оно. Имена выбирать отличные от ТСТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:57 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
сделал и через ИДЕ и скриптами, все одно: ERROR: ОШИБКА: отношение "mmus.kolob" не существует LINE 1: select * from mmus.kolob на это не ругается: ALTER DATABASE "postgres" SET search_path = mmus, public; тут тормознул: создал таблицу без указания схемы,в раблик попадла. просто с PostgreSQL впервые общаюсь... все, если делать скриптами, то работает, а из среды - почему-то нет... странно... pgadmin4 версия 5.2 - это не глючная? ставилась вместе с PostgreSQL 13.3. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 17:59 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33 сделал и через ИДЕ и скриптами, все одно: ERROR: ОШИБКА: отношение "mmus.kolob" не существует LINE 1: select * from mmus.kolob на это не ругается: ALTER DATABASE "postgres" SET search_path = mmus, public; а что показывает \dn+ в вашей базе? -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 18:01 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
повторюсь: тут тормознул: создал таблицу без указания схемы,в раблик попадла. просто с PostgreSQL впервые общаюсь... все, если делать скриптами, то работает, а из среды - почему-то нет... странно... pgadmin4 версия 5.2 - это не глючная? ставилась вместе с PostgreSQL 13.3. и просветите: \dn+ - это где делать? а то я ток первый день с PostgreSQL... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 18:07 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33 повторюсь: тут тормознул: создал таблицу без указания схемы,в раблик попадла. просто с PostgreSQL впервые общаюсь... все, если делать скриптами, то работает, а из среды - почему-то нет... странно... pgadmin4 версия 5.2 - это не глючная? ставилась вместе с PostgreSQL 13.3. и просветите: \dn+ - это где делать? а то я ток первый день с PostgreSQL... Всё и всегда смотриться в коммандной строке psql. )) + Если у вас схема действительно большими буквами указана то надо использовать синтакси from "TST".somename. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 18:19 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
я и писал большие буквы, если - делал с большими. в итоге получаетсятакая картина: если я делаю схемы и таблицы из среды pgadmin, то запросы без схемы в кавычках не работают: select * from "mySch".mymob - работает select * from mySch.mymob - выпадает в ошибку если все делаю скриптами, то работает и без кавычек: select * from "mmus".kolob - работает select * from mmus.kolob - тоже работает ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 18:29 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33 я и писал большие буквы, если - делал с большими. в итоге получаетсятакая картина: если я делаю схемы и таблицы из среды pgadmin, то запросы без схемы в кавычках не работают: select * from "mySch".mymob - работает select * from mySch.mymob - выпадает в ошибку если все делаю скриптами, то работает и без кавычек: select * from "mmus".kolob - работает select * from mmus.kolob - тоже работает Не вы первый с этим сталкиваетесь. Вот что в реальности происходит: Из https://www.postgresql.org/docs/13/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS Quoting an identifier also makes it case-sensitive, whereas unquoted names are always folded to lower case. For example, the identifiers FOO, foo, and "foo" are considered the same by PostgreSQL, but "Foo" and "FOO" are different from these three and each other. Соответственно когда вы скриптом создаете схему вы скорее всего ее имя без двойных кавычек указываете. Поэтому в реальности вы создаете не mySch а mysch А когда делаете через pgadmin он создает схему именно в том case что вы написали. Вот потому и разница в поведении. Я бы настоятельно рекомендовал все в lower case всегда делать во избежание подобной путаницы. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2021, 20:27 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Maxim Boguk, Спасибо, просветили! ток зачем такой гемор? не лучше ли - написал большими - значит большими... маленькими - значит маленькими... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2021, 01:45 |
|
запросы ругаются на схему
|
|||
---|---|---|---|
#18+
Леонид33 Maxim Boguk, Спасибо, просветили! ток зачем такой гемор? не лучше ли - написал большими - значит большими... маленькими - значит маленькими... Таков путь... точнее требования международного SQL стандарта которому лет и лет (хорошо если не 30 как минимум в этой части). Мне case insensetive в sql как раз нравяться потому что я могу писать как удобно-красивеее-поятнее мне лично а внутри всёравно low case будет. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2021, 10:23 |
|
|
start [/forum/topic.php?fid=53&fpage=10&tid=1993977]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 277ms |
total: | 419ms |
0 / 0 |