a89977ab6a
Try successive regular expression executions instead of only the first one on a "table clause" before giving up. Hacks around special case "INSERT INTO foo SELECT t. FROM foo f". Fixes issue #1311 .
2009-12-06 17:44:51 +00:00
d3ff85b730
Fix detection of previous token in query memo's. SynCompletionProposal.OnExecute passes x + y coordinates of current caret position - these are pixel values, while we expected them to be character + line numbers.
2009-12-06 17:12:56 +00:00
0218e3b754
Fix empty enum pulldown in datagrid. Broken in r2821.
2009-12-05 21:46:25 +00:00
566ac4a581
Destroy AllDatabases list *after* collapsing database tree, when a session connect is in progress. Hopefully fixes issue #1491 .
2009-12-05 19:57:44 +00:00
a4e8637bdc
Implement snippet generator for INSERT, UPDATE and DELETE statement using selected table. Clickable via query helpers columns tab, which then only involves selected column names. Fixes issue #1288 .
2009-12-05 17:46:40 +00:00
94df12fa1f
Enable auto scrolling in data- and query grid(s) when mouse is used to select rows. Fixes issue #849 .
2009-12-04 21:37:01 +00:00
43fe695bc1
Make SHOW KEYS FROM <selected-table> and SHOW COLUMNS FROM <selected-table> superfluous. To achieve that, move parser for SHOW CREATE TABLE string from table editor to helpers unit, where it can be called by everyone. For consistency reasons the index list in table editor is converted from a TWideStringList to a TObjectList, like both table and foreign key list. However, that results in a large diff here.
2009-12-04 21:20:06 +00:00
ffe782b157
Now that the table tools dialog also has a second tree column "size", it should get autofitted the same way as mainform.dbtree. Fixes issue #1500 .
2009-12-01 15:12:28 +00:00
14ff384039
Avoid accessing grid data array elements over its bounds in Datagrid.OnBeforeCellPaint, while painting NULL cell background. Can happen as RootNodeCount is set asynchronously to scrolling. Fixes issue #1497 and friends.
2009-12-01 13:16:43 +00:00
96f0478cb0
Increase length of displayed/loaded query in processlist by factor 10, so it's more helpful than 1 kb of SQL, but still low enough to avoid a huge memory load. Fixes issue #1498 .
2009-12-01 10:45:35 +00:00
1e0f6444b8
Enhance readability of sorted columns in high contrast mode (white text on black background). Check brightness and decide for a brighter or darker background color as needed. See issue #1366 .
2009-12-01 00:17:21 +00:00
7fed732f40
Tabs popup menu should only activate when clicked on the tabs area. Fixes issue #1456
2009-11-30 23:19:25 +00:00
cc028cee30
Fix sporadic access violation when a new row was inserted and UPDATE or INSERT gets posted. Fixes issue #1496
2009-11-30 20:58:31 +00:00
84f7663887
Make SQL help dialog modeless, so it can stay open while the user returns to its query or whatever. A later F1 pressing again searches the right help item. Fixes issue #971 .
2009-11-30 00:52:02 +00:00
a80e9cb91d
Fix point where last (successful connected) session name is saved to registry. The session manager is not the only place where Mainform.InitConnection is called.
2009-11-29 17:59:26 +00:00
627b4690ec
Minimize memory usage and optimize performance in process list tab when large (INSERT) queries are running, by fetching only the first KB of the "Info" column. Fixes issue #345 .
2009-11-29 17:31:03 +00:00
d8d82e3e72
Move caching of information_schema objects into database connection unit. Simplifies code when accessing them.
2009-11-29 15:50:51 +00:00
59da2e193a
Enhance visibility of size numbers in dbtree - use clWindow also for databases, and a darker grey for tables. Should fix issue #1492
2009-11-28 23:26:51 +00:00
1dc71c845d
Set focus to next available node after deleting one or more rows in datagrid. Fixes issue #1471
2009-11-28 23:13:35 +00:00
30b970c92b
Implement bulk table editing in table tools dialog. Fixes issue #576
2009-11-28 19:51:57 +00:00
a0fc5e2065
Readd code which I deleted in r2790 to achieve numbers without thousand separators in grids. A side effect was that FormatNumber(Float) still returned numbers with thousands. Avoid that, and let both int and float overloaded FormatNumber() functions pass their parameter to FormatNumber(string), and introduce a thousands parameter to be able to turn that off for grid numbers.
2009-11-25 23:17:08 +00:00
312f9cb67f
Fix too short SQL query timer, used in query tabs: Also count network time consumed by mysql_store_result(), display that time separately.
2009-11-25 21:36:06 +00:00
e456764692
Fix forever staying message in status bar, for certain situations.
2009-11-25 21:05:06 +00:00
4852f229e5
Allow multiple SQL files loaded via OpenFile dialog. Load file 0 in active query memo and file 1 to n in new tabs.
2009-11-25 20:52:37 +00:00
9b9442f470
Fix mixed up logic in Mainform.OnCloseQuery: Save dialog popped up for only one modified query content, then the form was not closed. Plus: Wrong tab captions in such cases.
2009-11-25 20:39:39 +00:00
c1855c84e7
Missing changes for r2789
2009-11-25 20:35:21 +00:00
0c83491ed5
Implement preference option to adjust tab width in SynMemos. Fixes issue #857 .
2009-11-24 19:34:48 +00:00
cdb936b77d
Consistently use FormatTimeNumber() also for formatting server uptime. Leave out the day portion if zero.
2009-11-23 21:24:25 +00:00
db3fbd0df7
Move timer stuff for server uptime and connection from main unit into connection layer. Both are seconds since start now.
2009-11-23 21:12:26 +00:00
a1d0d0c0ec
Prefer local formatting over raw numbers in grids:
...
* This time, also support formatted integers, not only floats.
* Do not quote both types in grid updates/deletes/inserts.
* Do no internal conversion from string to float and back to string (FloatToStr did that) to avoid silent data corruption. Just use strings in all places.
* Replace FloatStr() function with UnformatNumber(), which is also able to handle integers
Should fix issue #1012
2009-11-23 20:11:13 +00:00
50f0108864
Destroy dialogs early enough which implies one last access to main registry object, which would otherwise be free'd before these dialogs automatically get destroyed and cause an AV.
2009-11-22 23:58:51 +00:00
92bd620309
Introduce caching of collation table and table engines list in connection layer. Remove that stuff from main unit and automatically clear cached stuff on disconnection.
2009-11-22 23:42:39 +00:00
46c650eabd
Remove dead code.
2009-11-22 18:20:52 +00:00
45fa64fe81
Wrap most queries in a try..except block which may fail with a SQL privilege error. So these places do not raise an exception at user level. Exceptions should only raise in unpredictable error situations. Important for reactivating the MadExcept dialog.
2009-11-22 18:07:53 +00:00
d6367a09fa
Code cosmetic in "Insert files" dialog:
...
* Make sure the INSERT query is fired within a try/except block, and keep form open on any error
* Reasonably rename some component names
* Remove InsertFilesWindow(), instead cache the instance of InsertFiles in main form, like it is for most other dialogs
* Get rid of a with .. do block
* Ger rid of a weird form pointer, instead use the "Owner" property
2009-11-21 16:44:31 +00:00
c15b1e4b43
Add a second column to the checkbox tree to display sizes of tables, like it is in Mainform.DBtree
2009-11-21 07:45:25 +00:00
d2e5d1853b
Fix another exception cause for issue #1462
2009-11-17 16:38:41 +00:00
83a8df4f64
Keep release version number also in builds, instead of x.y. Can help to identify the right version one is using and looks less ugly in all places. Fixes issue #1372 .
2009-11-17 00:30:00 +00:00
bb5c3f40da
Prevent query memo height being reduced to 0 pixels, which makes it non resizable for some reason. Fixes issue #1147 .
2009-11-16 19:16:45 +00:00
ef5fbe225a
Rewrite export to SQL dialog and code. Integrate that into the table tools dialog, let it use the nice checkbox tree and make exporting lighting fast.
...
* Fixes issue #886 (broken CREATE TABLE)
* Fixes issue #608 (full backup)
* Fixes issue #281 (export views)
* Fixes issue #307 (header in directory mode)
2009-11-16 01:24:49 +00:00
f2007759b4
Fix SQL logging: Also comments may be so large so the get cut off - in that case they were not masked with /* */
2009-11-15 11:13:40 +00:00
5b6c94e8f7
Fix finding selected database in db tree - GetFirstSelected is obviously insufficient although it should do the same. However, fixes issue #1442
2009-11-12 21:01:55 +00:00
bdf1bf42e6
Remove dependency from "Questions" status variable. Seems some servers return wrong values in it which lets the command statistics display wrong percentages. Fixes issue #1463
2009-11-12 20:37:56 +00:00
66d80bdeab
Avoid accessing GetParentForm if it's already destroyed - hopefully fixes issue #1462
2009-11-11 20:20:07 +00:00
8f12ca9400
Again, try to fix issue #1450
2009-11-11 19:47:07 +00:00
f27306899f
Avoid setting VT.OffsetXY between VT.Header.Columns.Begin/EndUpdate. Hopefully fixes issue #997 .
2009-11-10 23:37:29 +00:00
9092175cc9
Try to fix a "unknown error" when canceling the session manager. Hopefully fixes issue #1450 .
2009-11-10 22:56:36 +00:00
88d7adffad
Do not auto initialize all previously initialized (but unselected) database nodes in dbtree. Very useless and time consuming. Instead, collapse all db nodes at that point. Also, this removes one weird effect when switching from server A to server B, when B as initialized db nodes with same names as on A. Also, this should remove an AV mentioned in issue #1428 .
2009-11-08 19:23:44 +00:00
b320caef17
Remove dead code
2009-11-08 16:17:12 +00:00
362a9fe1fe
Ensure we display a message dialog when the user tries an UPDATE, DELETE or INSERT in datagrid and he is not allowed to do that. Could be there are more places like this, f.x. when saving table structure.
2009-11-06 00:04:26 +00:00