Задать вопрос
  • Golang jetbrains не читает БД в sql?

    @galaxy
    Если я правильно понял вопрос (а это непросто), то потому что язык SQL - нечувствителен к регистру, т.е. следующие запросы эквивалентны:
    select * from Groups;
    select * from groups;
    select * from GROUPS;
    SELECT * FROM groups;
    SeLeCt * FrOm GrOuPs;


    Если вы берете название таблицы/колонки (или иного объекта БД) в кавычки, он становится (по крайней мере, согласно SQL стандарту) case-sensitive, т.е. "group"/"Groups"/"gRoUps" - будут разными идентификаторами (например, все три такие таблицы могут существовать в БД одновременно).
    Если кавычек нет, идентификаторы по стандарту сравниваются после приведения к upper-case. В Postgres это немного не так: там идентификаторы без кавычек приводятся к lower-case.

    Т.е. другими словами, запрос create table Groups ... создаст в Postgres таблицу с именем groups. Запрос select * from GrOupS; будет также искать таблицу с именем groups.
    При использовании кавычек запрос create table "Groups" ... создаст таблицу с именем Groups. Запрос select * from "GrOupS"; будет также искать таблицу с именем GrOupS.
    spoiler
    Речь выше только про Postgresql. Другие СУБД могут вести (и ведут) себя по-другому. Так, в mysql поведение идентификаторов зависит от ОС (точнее, от того, case sensitive/insensitive ее файловая система) и от конфигурации БД.


    Обычно это не вызывает проблем, пока вы не начинаете использовать закавыченные и незакавыченные идентификаторы одновременно. Например, что скорее всего имеет место в вашем случае, таблица создается запросом
    create table Groups ...
    -- реальное имя таблицы - groups

    Когда же вы делаете запрос select * from "Groups", обращение идет к несуществующей таблице Groups.

    В общем, разберитесь, какое название у таблицы в БД (в psql команда \dt, или смотрите свойства таблицы в своей среде). Если оно не lower-case, используйте кавычки с точным названием (например, select * from "GROUPS"), в противном случае лучше обходиться вообще без кавычек.
    Ответ написан
    Комментировать
  • Какой VPN выбрать в условиях санкций?

    @Drno
    Арендуешь VPS у любого хостера в РФ, который предоставляет их заграницей.
    Настраиваешь там opvn ну или l2tp
    Все, пользуешься. никто не заблокирует
    Ответ написан