Commit graph

47 commits

Author SHA1 Message Date
lsv
b5ec421085 Little fixes. Added a hotkey to generate.
Два первых шаблона генерации можно вызвать Ctrl+1 и Ctrl+2 соответственно.
2026-01-21 17:33:36 +05:00
lsv
63d0c37478 Template parsing error messages have been added to the status bar.
Сообщения об ошибках:
"The column name %s was not found in the query results" - имя колонки не найдено в результатах запроса.
"The column name  %s is not closed"                     - пропущен закрывающий символ @.
"The column name empty. %s ."                           - Имя не задано. Обычно бывает когда пропущен @.
"Incorrect flag at the %s column."                      - Не верный флаг. Поддерживается пока только "a".

Добавлено экранирование \t, \r
2026-01-16 11:12:34 +05:00
lsv
a8ddbc4999 Fix generate Insert SQL instruction. Copying result lines based on a template.
1. При некоторых настройках при генерации Insert инструкций, пустые строки заменялись на null.
   Этот коммит исправлет проблему.
2. Результаты запросов можно оформить произвольным образом используя шаблоны указанные в однострочных
   коментариях.
   Формат шаблона: --@gen:Имя шаблона в контестном меню результата:Тут текст шаблона - cols = @colname@,@colname2,a@\n
   Для добавлнения перевода строк в вывод можно использовать \n.
   Коментарии указывается в теле запроса (можно указать перед запросом).
   Можно указать строку из которой нужно сделать выбрать содержимое:
       @colname[-1]@ - содержимое колонки colname предыдущей строки(относительная адресация).
       @colname[0]@  - содержимое колонки colname 1 строки (или выделенного диапазона строк).
                       Адресация с начинается с 0. Это абсолютная адресация строк.
       @colname2,a@  - Указание что результат нужно будет выровнять.
                       Флаг "а" глобальный его можно указать у любой колонки.
       Флаги указываются в самом конце определения колонки после запятой. Пример: @col1[-1],a@

   Если перечень имен колонок запроса не совпадает со списком полей шаблона то шаблон не будет добавлен
   в контекстное меню Generate.
   Полученный текст копируется в буфер обмена.
   При генерации текста используются настройки "Вид кавычек" и "Что брать в кавычки".
   Шаблоны сохраняются перед выполнением SQL команды и после редактирования шаблона
   запрос нужно выполнить повторно.
2026-01-14 17:17:08 +05:00
lsv
087ad55c34 fix GUI for linux.
Исправления в отображения окна сравнения двух ячеек результата.
Размер панели инструмента в окне запросов увеличен до 32 при использовании svg иконок.
Функция для чтения логов приведена к одному виду (LogView).
2026-01-13 14:50:26 +05:00
lsv
cc5cc00060 The data path of the linux application has been changed to XDG_DATA_HOME.
Файлы которые создаёт приложение помещаются в $XDG_DATA_HOME/pgadmin3 или
~/.local/share/pgadmin3.
Уже существующие файлы копируются из ~/postgresql на новое место.
Каталог postgresql преименовывается в postgresql-no_use. Его можно будет удалить.
Иконки в формате SVG теперь можно размещать и в $XDG_DATA_HOME/pgadmin3 в каталоге svg.

Такая структуры каталога данных приложения:
~/.local/share/pgadmin3
├── icons                      # иконки для баз данных
├── recovery                   # сохранённые вкладки
├── svg                        # каталог svg иконок приложения
├── filter_load.txt            # фильтры csv лога для Log view
├── gitlab.json                # настройки подключения к git
├── pgadmin3opt.json           # дополнительные настройки приложения
└── pgadmin_autoreplace.xml    # списки автозамены
2025-12-25 17:41:27 +05:00
lsv
0f91ec5e67 fix warning for mingw32 2025-10-16 09:24:07 +05:00
lsv
295b7f97d1 Fixes and improvements (fmrReport)
1. Сортировка колонок на вкладках Статистика сохряняется по возможности.
2. Узлы плана которые помечены как (never executed) не подсвечиваются.
3. При построении плана всегда добавляется опция "SUMMARY on"
4. Исправлено не корректное отображение зависимостей для таблиц из публикаций.
5. В отчетах о статистике добавлена итоговая информация по таблицам отчета.
2025-08-14 19:34:30 +05:00
lsv
dd868d51fd Added the Ctrl modifier to the "Copy table html format" command.
При выборе команды "Copy table html format" и удержании Ctrl
будет выполнено копирование только строк результата запроса.
2025-03-27 22:08:45 +05:00
lsv
4a88ebd8d0 fix error position query, change view text cursor position.
Учтены символы UNICODE при определении позиции ошибки в запросе.
Если информация о позиции курсора превышает 24 символа то используется компактный вид,
без учёта языка интерфейса.
Последний элемент ("Ch") в позиции курсора изменён на код символа находящегося
справа от курсора.
2024-12-24 20:00:29 +05:00
lsv
5ee53e086f New features of the Query Editor
1. Добавлена возможность быстрой подстановки слов на латинице по нажатию
   Alt+RIGHT. Возможность включается настройкой "Use word hints".
   Список слов составляется при загрузке запроса и по мере ввода новых слов.
2. Добавлена возможность заменять при выполнении запроса переменные вида
   $1, $2, ... или :variableName1 на пользовательские значения введённые
   в диалоге. Пока можно заменять переменные в запросах select,update,delete,insert.
   Перед отправкой запроса на сервер переменные заменяются простой текстовой заменой.
   Запрос который выполнен на сервере можно посмотреть на вкладке История.
   Возможность включается настройкой "Replace variables in a query".
   Выделить правой кнопкой выполненый запрос не получиться т.к. текст выполненого запроса
   и текст в редакторе будет отличаться.
2024-12-17 18:34:48 +05:00
lsv
763f587834 Add new dialog Transformation text.
В окне редактирования запросов можно вызвать диалог транформации текста (Ctrl+M).
Где при помощи PCRE регулярных выражений можно изменить выделенный текст или текст из буфера обмена.
Регулярные выражения имеют подсветку синтаксиса и подсветку найденных групп.
В выражении замены можно ссылаться на найденные группы при помощи \g{номер_группы}
Настройки цветов можно редактировать в pgadmin3opt.json файле.
2024-09-24 11:17:15 +05:00
lsv
44ca0e5ede Fix issue#44. Show View Query editor on linux.
Исправлено расположение окон в перпективе редактора запросов для linux.
2024-08-29 18:52:31 +05:00
lsv
282297884a fix issue #41
При сбросе флага "Auto save query text" отключалась возможность автоматического сохранения запросов.
Но ранее сохраненные запросы не удалялись.
Теперь эти запросы будут удалены при первом же открытии "Редактора SQL".
2024-06-19 18:57:19 +05:00
lsv
e2eeabf21c Add modificator Ctrl for popup menu "List columns header"
При нажатом Ctrl в буфер обмена копируются только имена столбцов с разделителем ",".
2024-06-17 20:39:40 +05:00
lsv
2d7ac600c0 fix deprecated warning 2024-02-06 08:34:42 +05:00
lsv
075347b1c3 Add action Compare 2 Cells
При помощи команды можно сравнить 2 не пустые ячейки в результах запроса.
2024-02-02 19:12:20 +05:00
lsv
bce303c437 fix #38. Add options "Quick jump to the root node" and "Auto save query text".
Первая предназначена для отключения/включения быстрого перемещения к корневым узлам.
Вторая для отключения/включения автоматического сохранения закладок в Query Tool.
После отключения авто сохранения возможно понадобиться вручную очистить каталог
с сохранёнными закладками %APPDATA%\postgresql\recovery
2023-10-25 21:12:04 +05:00
lsv
4d7ed843aa Small changes COPY_TABLEHTML
Добавил возможность выбирать отдельные строки для копирования.
2023-10-25 21:00:56 +05:00
lsv
6f7e04671e Add new option "Hide query history"
Добавлена возможность скрыть строку с историей запросов.
История зпросов будет сохраняться вне зависимости от это опции.
2023-08-02 20:13:29 +05:00
lsv
e320b2ebf2 fix GDI leaks 2023-07-30 10:33:41 +05:00
lsv
d07487eac9 Add support High DPI
Выполнен переход на wxWidgets 3.2 для улучшения поддержки DPI.
Также обновлена среда разработки до Microsoft Visual Studio 2022.
2023-06-25 18:36:16 +05:00
lsv
7dc02bd6fc Correct query counter 2023-05-23 14:09:09 +05:00
lsv
2fbed7a6a4 Add alignment command
Добавлена возможность запуска внешней команды для выравнивания текста
по разделителям. На java написан скрипт для выравнивания списков
align.jar. Запускать командой @java.exe -jar <PATH>\align.jar
которую нужно поместить в bat файл
2023-05-02 22:17:29 +05:00
lsv
83e372aae5 Add action CopyTableToHtml
Копирование результатов запроса в буфер обмена в виде таблицы html.
2023-02-02 10:46:33 +05:00
lsv
f177940bd4 fix bug
Устранено падение по нажатию F4 возникающее при определенных пользовательских настройках
2023-01-26 19:16:11 +05:00
lsv
614a7f0adc Double the single quote.
Добавлена команда удвоения одиночной кавычки в выделеном тексте и обратная команда.
2023-01-16 08:22:33 +05:00
lsv
a2aad527ff Change Title windows Server ststus,Query
Убраны не важные слова из заголовка.
2022-11-24 19:23:59 +05:00
lsv
cc7945be5c Reload script file after modification
Если загруженный на вкладку sql файл был изменён вне pgAdmin3,
то при смене закладок или попытке выполнения
будет предложено загрузить файл заново.
2022-07-25 21:23:35 +05:00
lsv
0ec8c60a68 Add "Copy list columns header" context command SQL Result
Добавлено копирование в буфер обмена списка имен и типов колонок результата запроса.
2022-07-15 07:22:37 +05:00
lsv
8c123b0550 Add Bar plot
Добавлена отрисовка столбчатой диаграммы. Формат данных:
L  | Y
------
L1 | Y1
L2 | Y2
...
2022-05-27 22:28:56 +05:00
lsv
1431b1abdb Add draw plot XY series
Для результатов запроса, можно построить график по трём колонкам:
L  | X | Y
----------
L1 | x1| y1
L1 | x2| y2
L2 | x3| y3
L2 | x4| y4
...

Колонки должны быть отсортированы по L,X
Типы колонок:
L - текст (это легенда серии данных)
X - дата или числа
Y - числа
График строится по четырём и более колонкам (серии данных вертикальные):
 X | L1| L2| ...| Lx
--------------------
 x1| y1| y5|....| y.
 x2| y2| y6|....| y.
 x3| y3| y7|....| y.
 x4| y4| y8|....| y.

Серии данных располагаются вертикально. Легенда это заголовок столбца
Колонка Х общая для всех серий.
2022-05-27 21:45:36 +05:00
lsv
8f8bd98d2c fix bug query tool size 2022-05-23 20:00:56 +05:00
lsv
9e9bfef8b8 fix without patch
Приведение в соответствие с github
Патч делать не нужно.
2022-04-27 16:01:13 +05:00
lsv
dbd359efa8 fix issues#23. Add query tool new hot keys.
Можно добавить к пунктам меню дополнительные горячие клавиши.
Всего определено 15 пунктов меню для которых это можно сделать
MNU_COMMENT_TEXT,MNU_DOCOMMIT,MNU_DOROLLBACK,MNU_EXECFILE,
MNU_EXECPGS,MNU_EXECUTE,MNU_EXECUTE_2,MNU_EXIT,MNU_EXPLAIN,
MNU_EXPLAINANALYZE,MNU_EXPORT,MNU_EXTERNALFORMAT,MNU_NEWSQLTAB,MNU_UNCOMMENT_TEXT
Для этого в файле %APPDATA%\postgresql\keymap.txt нужно добавить пункты меню и новую клавишу.
Например:
MNU_EXPORT Alt+S
MNU_EXECUTE F5
MNU_EXECUTE_2 SHIFT+F5
MNU_EXIT Ctrl+F4
MNU_NEWSQLTAB Ctrl+W
MNU_COMMENT_TEXT Ctrl+K
MNU_UNCOMMENT_TEXT Alt+K
MNU_EXECFILE F9
MNU_EXECPGS F6
2022-03-22 09:18:10 +05:00
lsv
65eef54d6a fix issue#22
Так же исправление падения при открытии инструмента запросов из командной строки.
2022-03-04 12:28:15 +05:00
lsv
3a817534b4 Version PG14 fix.
Поддерживаемая версия поднята до 14-ой.
Мелкие правки.
2022-01-24 09:06:18 +05:00
lsv
d0325c4dac fix bug position active tab
Утранена ошибка позиционирования закладок при автовосстановлении.
2022-01-13 09:47:45 +05:00
lsv
4684ada1ac change pgConn, frmLog, frmStatus
При возникновении ошибки "server closed the connection unexpectedly"
сообщение об этом не выводиться на экран. Т.к. происходило падение pgAdmin3
В frmLog добалены сохраняемые пользовательские фильтры.
 По кнопке Add текущий фильтр сохраняется. Имя задается в ComboBox.
В окне "Status Server" устанавливается парамер "SET statement_timeout=10000;"
чтобы избежать зависания функции pg_query_state.
2021-12-09 15:00:10 +05:00
lsv
92b606256b check the sequence of dates.
Добавлена проверка последовательности дат в результате запроса.
По первым двум строкам вычисляется разница дат и все последующие строки
должны иметь такую же разнизу в датах.
Строки нарушающие это правило отмечаются желтым цветом.
2021-09-30 16:24:37 +05:00
lsv
9f11446e5d bug fix
мелкие правки: более правильное сохранение активной закладки.
Учтено использование ctltree не только в браузере объектов.
2021-06-03 13:55:58 +05:00
lsv
2734a746a9 Migration to wxWidgets 3.1.5
Выполнен переход на новые библтотеки. Устранены проблемы совместимости.
Множество мелких правок.
2021-05-21 11:09:20 +05:00
lsv
4293a1e9e8 remove word Query in title 2021-04-15 09:46:52 +05:00
lsv
bd09ad72c2 automatic select sql tab
При шелчке правой кнопкой мыши по закладке с результатами запроса,
активируется sql окно с запросом.
2021-04-09 17:13:02 +05:00
lsv
f1163cab32 Change icon for SQL query window.
Есть два способа изменения icon для окна query.
1.  Поместить новую icon в %APPDATA%\postgresql\icons
    Имя файла задать следующим образом: hostname_dbname.png или hostname.png или dbname.png
    Размер icon 32х32
2.  Задать для сервера цвет. Фон icon будет окрашен в цвет сервера.
2021-02-19 16:00:40 +05:00
lsv
0dbba5fd32 Save position outputPane.
Сохраняется расположении окон при скрытии outputPane и применяется при показе.
2021-02-19 10:58:45 +05:00
lsv
70ffecb664 Added copying of selected cells IN list format.
Результаты запроса могут скопированы в формате In списка и в формате условия WHERE.
Копирование выполняется через контекстное меню.
2020-09-02 13:52:23 +05:00
lsv
9c6f9f3405 init 2020-07-07 22:19:12 +05:00