mirror of
https://github.com/levinsv/pgadmin3.git
synced 2026-05-15 14:15:49 -06:00
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". Выделить правой кнопкой выполненый запрос не получиться т.к. текст выполненого запроса и текст в редакторе будет отличаться.
This commit is contained in:
parent
09dab55c0b
commit
5ee53e086f
16 changed files with 796 additions and 81 deletions
|
|
@ -105,6 +105,7 @@ namespace FSQL {
|
|||
{ "having", 6, new_line_align_no_pad | end_from},
|
||||
{ "except", 6, new_line_align_no_pad | end_from},
|
||||
{ "offset", 6, none | end_from},
|
||||
{ "cursor", 6, none},
|
||||
{ "nothing", 7, none},
|
||||
{ "lateral", 7, none},
|
||||
{ "between", 7, none},
|
||||
|
|
@ -112,12 +113,16 @@ namespace FSQL {
|
|||
{ "nothing", 7, none},
|
||||
{ "default", 7, none},
|
||||
{ "current", 7, none},
|
||||
{ "prepare", 7, none},
|
||||
{ "execute", 7, none},
|
||||
{ "declare", 7, none},
|
||||
{ "distinct", 8, special},
|
||||
{ "conflict", 8, none},
|
||||
{ "recursive", 9, none},
|
||||
{ "intersect", 9, new_line_align_no_pad | end_from},
|
||||
{ "returning", 9, none},
|
||||
{ "ordinality", 10, none},
|
||||
{ "deallocate", 10, none},
|
||||
{ "materialized", 12, none},
|
||||
};
|
||||
struct complite_element {
|
||||
|
|
@ -152,8 +157,9 @@ namespace FSQL {
|
|||
//
|
||||
int ParseSql(int flags);
|
||||
wxString printParseArray();
|
||||
void SetSql(const wxString& sqlsrc) { sql = sqlsrc; }
|
||||
void SetSql(const wxString& sqlsrc) { sql = sqlsrc; lastposition = 0; }
|
||||
int GetIndexItemNextSqlPosition(int sqlPosition);
|
||||
int GetNextPositionSqlParse();
|
||||
bool GetItem(int index, FSQL::view_item& item);
|
||||
private:
|
||||
wxString get_list_columns(int startindex, union FSQL::Byte zone);
|
||||
|
|
@ -171,6 +177,7 @@ namespace FSQL {
|
|||
wxPoint neededNewLine; // добавляет новую строку перед первым встреченным не пробельным символом
|
||||
wxRect rect;
|
||||
wxString sql;
|
||||
int lastposition = 0;
|
||||
std::vector<FSQL::view_item> items;
|
||||
std::vector<FSQL::complite_element> listTable; // перечень таблиц синонимов, подзапросов и функций с колонками
|
||||
//int recurse(int level);
|
||||
|
|
|
|||
|
|
@ -856,6 +856,27 @@ public:
|
|||
{
|
||||
WriteBool(wxT("HideQueryHistory"), newval);
|
||||
}
|
||||
|
||||
bool GetUseHintWords() const
|
||||
{
|
||||
bool b;
|
||||
Read(wxT("UseHintWords"), &b, false);
|
||||
return b;
|
||||
}
|
||||
void SetUseHintWords(const bool newval)
|
||||
{
|
||||
WriteBool(wxT("UseHintWords"), newval);
|
||||
}
|
||||
bool GetReplaceVars() const
|
||||
{
|
||||
bool b;
|
||||
Read(wxT("ReplaceVars"), &b, false);
|
||||
return b;
|
||||
}
|
||||
void SetReplaceVars(const bool newval)
|
||||
{
|
||||
WriteBool(wxT("ReplaceVars"), newval);
|
||||
}
|
||||
bool GetAutosaveQuery() const
|
||||
{
|
||||
bool b;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue