Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PostgreSQL Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Victor256
А эта штука вообще работает? Где мои базы? )

1. Регистрация только на одну базу. Т.е. тут идеология отличается от PgAdmin - там видны все базы данного сервера.
2. При регистрации надо правильно указать версию сервера. Ошибка уйдёт.
25 окт 19, 15:37    [22002752]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Victor256
Кстати - можно узнать сочетание, которое было указано? Т.е. какая реально версия сервера и какая была указана? Постараюсь обработать более корректно ситуацию.
25 окт 19, 15:41    [22002763]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Новая сборка
- Исправил ошибку при отображении информации о пользователе/группе если версия сервера >= 9.6, а в регистрационных данных указана < 9.6
+ При регистрации новой БД добавил контроль на заполненность наименования подключения (алиаса БД) - пустые значения запрещены.
25 окт 19, 16:44    [22002839]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
Victor256
Member

Откуда:
Сообщений: 48
alexs75, указал 10, версия 10.7
ЗЫ. Но ведь есть SELECT version()
25 окт 19, 17:25    [22002908]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
Melkij
Member

Откуда: Санкт-Петербург
Сообщений: 973
Victor256
ЗЫ. Но ведь есть SELECT version()

да не надо пытаться парсить предназначенную для человека version()
Есть server_version_num и вообще PQserverVersion вызов libpq который берёт прилетающий во время коннекта server_version от базы.
25 окт 19, 17:41    [22002927]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Проблему я вроде решил. Для обновления данных теперь беру фактическую версию с сервера а не из данных регистрации.

Данные регистрации нужны для уточнения синтаксиса генерации скриптов на создание объектов БД.
У меня есть ситуации когда тестовая БД уже на более свежей версии, чем БД в продакшене.
Знаю, что это плохо - но это жизнь.
25 окт 19, 19:00    [22002976]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Новая сборка
- Исправил ошибку в автодополнении в редакторе SQL для UPDATE/DELETE запросов без CTE
+ Начал реализацию окна подсказки в редакторе SQL для параметров процедур/функций
28 окт 19, 16:24    [22004413]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
mozheyko_d
Member

Откуда: Мутноводск
Сообщений: 490
Не умеет соединяться с удаленным сервером через ssh-туннель с аутентификацией по ключу: вроде бы все поля заложены (хоть иногда со странными названиями), но не работает
30 окт 19, 10:07    [22005725]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
mozheyko_d,
По ssh ключу действительно ещё не доделал - нет личной заинтересованности. Надо будет доделать.
30 окт 19, 10:39    [22005760]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
Victor256
Member

Откуда:
Сообщений: 48
alexs75, вопрос от человека, никогда не работавшего с IBExpert. В чем фишка/преимущество программы по сравнению с тем же DBeaver?
31 окт 19, 11:41    [22006952]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Victor256,
Как человек, никогда не работавший с DBeaver, скажу - не знаю. Не знаю предоставляемый функционал DBeaver.

По факту мой манагер - это мой рабочий инструмент для разработки моих систем. Создание было вызвано отсутствием привычного функционала после перехода с FB на PG - особенно для линукса.
Заодно с его помощью я сам просто изучаю Postgres (ну и прочие СУБД).

Из постоянно используемых плюшек для меня важно удобство написание тригеров/хранилок в БД - поэтому там я постоянно что либо добавляю.
Также мне удобно иметь лог на создание объектов в БД в качестве файлов на обновление версий БД. Компарерами лениво пользоваться.
Ну и, естественно, написание запросов - поэтому всякие автодополнения в редакторе SQL с хинтами и подсказками.

В будущем хочется полнофункциональный отладчик для хранилок и триггеров реализовать (опять идея из IBExpert-а).

PS
А ещё мне не нравится внешний вид и отзывчивость приложений, написанных на яве - но это уже холивар.
31 окт 19, 11:55    [22006979]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
DSKalugin
Member

Откуда: Мать городов русских
Сообщений: 355
alexs75
PS
А ещё мне не нравится внешний вид и отзывчивость приложений, написанных на яве - но это уже холивар.

Мне тоже! Кстати, DBeaver, действительно, можно считать лучшим кросплатформенным Freeware Java-инструментом. Сам его использую и на Win и на Linux.

Существуют классические оконные клоны IBExpert от фирмы EMS для всех популярных СУБД.
в частности для PostgreSQL - это EMS SQL Manager for PostgreSQL Freeware
P.S. Только не пробуйте 6-ю последнюю версию (дичь) Предыдущая 5-я Вам точно понравится! Есть переключение интерфейса MDI/SDI. Вполне можно запускать из под Wine

Сообщение было отредактировано: 31 окт 19, 12:25
31 окт 19, 12:19    [22007027]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
DSKalugin,
Вот с EMS вопрос большой - они умудрились испортить интерфейс IBExpert-а (если не ошибаюсь - это изначально был один продукт)
Я перед созданием FBM пытался EMS ипользовать. Но дикие лаги при отрисовке - всё впечатление было испорчено.
А сейчас по функционалу FBM в части PG как бы не лучше. SQLite - наверное тоже весь функционал охватил. MySQL и FireBird - в принципе работает. Но там я сильно не полирую.
31 окт 19, 13:05    [22007074]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
DSKalugin
Member

Откуда: Мать городов русских
Сообщений: 355
Ошибка парсера из-за символа "::"(два двоеточия) для приведения типа?
В DBEaver 6 отрабатывает успешно
SELECT * FROM zakupki_gov_ru.contr223_hdr_export_ud1054_nanolek
where publishdate = '2019-10-31'::DATE

SQL Error: ERROR:  syntax error at or near ":"
LINE 1: ..._export_ud1054_nanolek where publishdate = '2019-10-31':DATE
^
5 ноя 19, 13:13    [22009897]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
DSKalugin,
Есть такое. Двоеточия надо удваивать.
Тут ZEOS конфликтует с придумкой команды PG по кастованию типов.
А вообще кастовать можно по стандарту SQL - через CAST( xxx as yyy)
Через : в запрос передаются параметры - как и во всех приложениях Lazarus/Delphi.
Наверное сделаю настройку на работу в стиле PG.
5 ноя 19, 13:19    [22009901]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
DSKalugin,
В параметрах системы в разделе параметров PostgreSQL добавил флажок на выключение использования : как параметра запроса.
При выключенном флаге - можно кастовать типы в стиле PG, через ::
6 ноя 19, 16:30    [22010905]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
DSKalugin
Member

Откуда: Мать городов русских
Сообщений: 355
alexs75
DSKalugin,
Тут ZEOS конфликтует с придумкой команды PG по кастованию типов.
Через : в запрос передаются параметры - как и во всех приложениях Lazarus/Delphi.

Обновился из архива fbmanager-win32-2019-11-08--00-11-01.tar.bz2 и что-то не получается кастить ни с галкой "Use params char", ни без галки в настройках PostgreSQL/Параметры
Похоже, после первого Exception на этапе prepare запроса, дальнейший ход нарушается или "некорректный" запрос застряёт в кеше

такое в принципе возможно (с кастом и параметром в одном запросе)?
select func1(:paramName::numeric)
8 ноя 19, 19:03    [22012573]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
DSKalugin,
Там либо использовать : параметр как параметр либо использовать :: как каст
Одновременно - нельзя. (ZEOS так работает - его переписывать пока не хочется :-))
PS
Если есть идеи как это сделать - выслушаю.

Сообщение было отредактировано: 11 ноя 19, 08:48
11 ноя 19, 08:47    [22013233]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
Dmitri Krizhanovski
Member

Откуда:
Сообщений: 496
alexs75,

Посмотри ParamChar
11 ноя 19, 20:34    [22013940]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
alexs75
Member

Откуда:
Сообщений: 49
Dmitri Krizhanovski,
Проблема в том что символ параметра в lazarus/delphi и символ привидения типа в PG один и тот же - ":"
И в том и другом случае он имеет долгую традицию - и просто так отказаться от него не получается.
Для меня в приоритете : как параметр - поэтому и есть такое поведение. Для отключения этого поведения я и добавил настройку.

Сообщение было отредактировано: 12 ноя 19, 08:24
12 ноя 19, 08:23    [22014097]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для рабработки БД  [new]
DSKalugin
Member

Откуда: Мать городов русских
Сообщений: 355
при ежедневном использовании столкнулся вот ещё с чем:
  • когда смотришь структуру таблицы ("Поля": параметры полей в гриде) не хватает колонки "значение по умолчанию"
    processing_id int2 NOT NULL DEFAULT 0 
    

    это значение можно увидеть только в "DDL"
  • когда смотришь "Данные" в таблице, то для длинных строчных полей, например, Varchar(2048) ширина колонки может оказаться гораздно больше ширины самого грида. Приходится долго вручную сужать ширину таких полей чтобы увидеть все поля на одном экране. Вижу 2 решения: галка "AutoFitColWidths" (есть такое свойство в DBGridEh) на панеле инструментов или перед отображением сверять ширину полей с шириной грида и устанавливать ширину колонок не шире ширины грида.
  • Найдены черновики импорта данных :-) Реально полезная фича!
  • 13 ноя 19, 16:01    [22015563]     Ответить | Цитировать Сообщить модератору
     Re: Инструмент для рабработки БД  [new]
    alexs75
    Member

    Откуда:
    Сообщений: 49
    DSKalugin
    при ежедневном использовании столкнулся вот ещё с чем:
  • когда смотришь структуру таблицы ("Поля": параметры полей в гриде) не хватает колонки "значение по умолчанию"
    processing_id int2 NOT NULL DEFAULT 0 
    

    это значение можно увидеть только в "DDL"

  • Добавил колонку
    DSKalugin
  • когда смотришь "Данные" в таблице, то для длинных строчных полей, например, Varchar(2048) ширина колонки может оказаться гораздно больше ширины самого грида. Приходится долго вручную сужать ширину таких полей чтобы увидеть все поля на одном экране. Вижу 2 решения: галка "AutoFitColWidths" (есть такое свойство в DBGridEh) на панеле инструментов или перед отображением сверять ширину полей с шириной грида и устанавливать ширину колонок не шире ширины грида.

  • Кнопку добавил
    А также там есть шорткат - ctrl+"серый плюс" - я через него пользуюсь. Также команда доступна из инструментального меню грида (верхний левый угол грида).

    А вообще проблема интересная - сейчас ширина колонки рассчитывается исходя из максимального размера данных. Хотя с большими колонками это действительно не удобно. Мысль бродит сделать какой нибудь хитрый расчёт ширины - но ещё не определился сам. Есть у кого какие идеи на этот счёт?


    Собрал новую версию
    Главное - работает с PG12
    Также мелкие косметические правки.
    13 ноя 19, 16:50    [22015603]     Ответить | Цитировать Сообщить модератору
     Re: Инструмент для рабработки БД  [new]
    Nebo
    Member

    Откуда:
    Сообщений: 2809
    alexs75,

    Выкладывайте в опен сорс. Если делаете для всех, то пусть все и подключаются к разработке.
    14 ноя 19, 00:46    [22015791]     Ответить | Цитировать Сообщить модератору
     Re: Инструмент для рабработки БД  [new]
    alexs75
    Member

    Откуда:
    Сообщений: 49
    Nebo,

    Он так и есть. Исходники - https://github.com/lalexs75/FBManager
    14 ноя 19, 08:09    [22015831]     Ответить | Цитировать Сообщить модератору
     Re: Инструмент для рабработки БД  [new]
    ВМоисеев
    Member

    Откуда: Редкино
    Сообщений: 2085
    >alexs75, 9 окт 19, 09:14 [21990057]
    >...пишу для себя инструмент для проектирования БД
    <В случае PostgreSQL работающий инструмент нужен не только Вам. Мне бы он также не помешал. По мере сил готов участвовать в его тестировании, поскольку крайне утомлен pgAdmin. Пожалуйста, исправте эту ошибку.

    К сообщению приложен файл. Размер - 58Kb
    14 ноя 19, 14:19    [22016263]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
    Все форумы / PostgreSQL Ответить