2018-07-16 14:28 GMT+02:00 Dmitry Igrishin <dmitigr@xxxxxxxxx>:
пн, 16 июл. 2018 г. в 15:01, Pavel Stehule <pavel.stehule@xxxxxxxxx>:2018-07-16 13:52 GMT+02:00 Dmitry Igrishin <dmitigr@xxxxxxxxx>:пн, 16 июл. 2018 г. в 14:26, <kpi6288@xxxxxxxxx>:We – and the majority of our customers - are mainly focused on Windows. We use pgadmin iii and our own assistants. pgadmin iv ist still too slow on Windows compared to pgadmin iii. That is one reason why we still use PostgreSQL 9.6.
For performance reasons I mostly use the C++ language. Thus, I think the performanceshould not be a problem here.
That said, one requirement on a commercial tool for us would be royalty free distribution to our customers. It should however provide the functions of pgadmin iii.
Do you need an administration tool or an assistant for database development? I conceived Pgspa as adevelopment tool, which works with source files organized in the usual way. For example, the sourcesof the schema "foo" could be organized as:foo/functions/*.sql/views/*.sql/triggers/*.sql...The developer works with files rather than objects retrieved from the database and loadedinto the tree view of the GUI (like in pgAdmin and most of other similar tools). Though, thedatabase browser GUI is a useful feature of course, and should be implemented.Few years I am thinking about new IDE for stored procedures. Probably It should not be written from scratch, but It should to be multiplatform.Me too :-) I have a command line prototype of the tool with the basic functional. It's writtenin C++ by using the Pgfe client library and in PL/pgSQL as the PostgreSQL extension.what can be nice1. source should be in files with GIT support+1. It's the main feature. Already done.2. integration with developer databese + well autocomplete supportIt's the most hard part and could be implemented later.
The basic autocomplete is necessary - table names, column names, .. It should not be too intelligent - but this is main benefit again generic already available IDE.
3. formatting - SQL, PL, ..Good feature for future releases.
4. online code validationNot sure I understand. Can you please elaborate what do you mean?
For PLpgSQL simple (press one key) send source code to server and highlight errors (it can be integrated with plpgsql_check). For SQL using not existing identifier, ..
5. The should not be strong relation between files and schemas. Now is not too hard to have information what content is in some file. There can be physical organization (by files), and logical (by schemas, functions, views, ...)I agree and there is no problems with it. But logical organization would be a bit simplerto implement, and would be suitable for the most users. Also it can be even helpful when someoneworking with foreign project since the database objects are arranged in shelves.
I cannot to estimate the cost of these variants - I use mapping - one schema - one or more files, but the objects to files are divided by dependency - some objects can be simply updated, other not.
Very specific kind of DB objects are views. The IDE can helps with changes of views. It is pretty hard now due dependency.
6. good performance is important - but Java is good enough today - DBeaver is has good speedMy primary (and favorite) language still C++ :-)
I have no problem with it. But C++ is harder for junior developers and multiplatform Qt can be expensive for commercial product. But I understand personal preferences (I don't like Java too). On second hand - the performance argument is not valid against Java.
RegardsGood luck - can be pretty hard to write it.Thank you, Pavel! But I haven't decided about starting this project, since I'm not sure aboutthe interest from the community.
Understand. Developer is alone every time. But lot of work is done. If I started similar project (but I have not this plan), then I don't try to write own IDE, but I'll use some existing and I'll write plugin for eclipse, or some else.
Although the work is maybe harder, you can get more quickly more wide community.
Regards
Pavel
p.s. IDE for developers is some different than admin tool for administrators. Should be decided what is target.Yeah, I'm talking about the tool for developers here.