forums › forums › SQLyog › SQLyog: Bugs / Feature Requests › Treeview Behaviour Bug In Structure Syncrhonisation Tool – Sqlyog Ent
- This topic is empty.
-
AuthorPosts
-
-
October 24, 2006 at 9:38 am #9987AnonymousGuest
When comparing database structures Structure Synchronization Tool produces a tree with branches
1. Tables
2. Views
3. Stored Procs
4. Functions
If you choose the head of that branch (e.g. functions) and deselect it, it deselects all other branches (i.e. Stored Procs, Tables etc). Surely it should only deselect the one branch?
D.
-
October 24, 2006 at 11:37 am #22837peterlaursenParticipant
It is not a bug actually. We designed so that VIEWS, SP's and FUNCTIONS 'are linked to' ALL TABLES. It is not possible to sync VIEWS, SP's and FUNCTIONS if not all tables are selected and opposite. This is to avoid situations where one of those depend on some table. Syncing the object without syncing the table would damage the database. We do not parse the CREATE statement for those objects (only do a SHOW FULL FIELDS FROM ..) and cannot tell wchich objects depends on each other.
Also the tool is a DATABASE STRUCTURE SYNCHRONIZATION tool. Not a SP's synchronization tool for instance.
As the tool is now you will have to edit the sync script.
I understand that the GUI design can be a little confusing. We have not found a better solution with the software component (scintilla editor) that we use for drawing those objects. However we have ourselves also some wishes for future imporvements of this. But is is not priority of this moment.
-
October 27, 2006 at 6:50 am #22838AnonymousGuest
Hi Peter,
Please don't take any of my posts as being just negative, I'm just trying to make a product I like, better….
I think perhaps, if you don't like the “bug” label, then perhaps “bad usability” would be better. The defacto behaviour for a tree view is that deselecting a node in a tree view deselects all its children and not its siblings as well.
I can appreciate you want to “idiot proof” the functionality, but breaking convention and making things confusing for users doesn't help.
Lets look at an example, where youe implementation makes using the system extremely frustating.
Say I want to synchronise the structure of 2 databases *A* and *B*.
Say that on *A* I have just changed some data types, for instance all DOUBLE(8,2) to DOUBLE (10,4), for better precision. I've also added and modified a few stored procedures which I haven't tested, but in the mean time want to synch some of the changes.
The SST will show me
Tables (checked)
1 (checked)
2 (checked)
3 (checked)
4 (checked)
5 (checked)
6
Procedures (checked)
1 (checked)
2 (checked)
3 (checked)
4 (checked)
5 (checked)
6
7
Now *ALL* I want to do is update the tables (a fairly reasonable request, considering I'm a DBA).
If I uncheck “procedures” it will uncheck all of the tables. This means that to get the desired (and expected) behaviour I would have to in fact uncheck procedures 1-5 manually *or* uncheck everything and then manually check tables 1-5. What if it was 10, 20 or 100….forget about me clicking each one, that's just bad.
My 2c.
D.
-
October 27, 2006 at 7:40 am #22839peterlaursenParticipant
hmmm …
I think the solution could be ctrl-click and shift-click modifiers, so that you will only need to click the first and shift-click the last checkbox. This is a pending request too in more situations/places – also DATA and RESULT tab.
comments?
-
October 27, 2006 at 2:07 pm #22840AnonymousGuestpeterlaursen wrote on Oct 27 2006, 09:40 AM:hmmm …
I think the solution could be ctrl-click and shift-click modifiers, so that you will only need to click the first and shift-click the last checkbox. This is a pending request too in more situations/places – also DATA and RESULT tab.
comments?
Sounds good to me.
D.
-
-
AuthorPosts
- You must be logged in to reply to this topic.