424 Commits

Author SHA1 Message Date
b4cca2ea1f Implement handling of triggers as separate database objects, on the same level as tables, routines and views. Means we have a trigger editor frame, a new icon and various code extensions. Fixes issue #806. 2009-12-11 16:07:59 +00:00
6b92c3b08c Activate relevant tab before asking if contents shall be saved. Fixes issue #1518. 2009-12-10 20:48:35 +00:00
1f1e771fa6 Make views show their data again in data tab. Fixes issue #1515. 2009-12-09 21:08:38 +00:00
eefdbec81c Render primary key columns in query results in bold font, like in data grid. 2009-12-09 20:03:46 +00:00
f03af60357 Throw away one regular expression logic for detecting table columns, we have a simpler way to do that since r2821 2009-12-09 19:26:35 +00:00
a24c2bb847 Fix Unicode issue on main tabs: databases and tables with international characters were broken on tab captions. This just converts the main TPageControl to a TTntPageControl, plus its TTabSheets to TTntTabSheets. 2009-12-09 00:13:55 +00:00
a3aae38d2e Do not add UTF-8 BOM headers to written files, they are not needed in most cases, and break other tools from reading them, e.g. mysqldump. See http://www.heidisql.com/forum.php?t=4622 2009-12-08 23:51:43 +00:00
3ca479dd39 Trigger auto completer on @@SESSION and @@GLOBAL to display variables. Fixes issue #1513. 2009-12-08 13:58:36 +00:00
0e29eda7ac Add preference option to use locale number format for CSV+XML+HTML exports. Mainly to work around an Excel bug, which expects float values to be formatted with locale decimal separator when pasting. Fixes issue #1459. 2009-12-08 09:14:42 +00:00
bd4dd71797 Remember state of "Stop on errors in batch mode" button/action. Fixes issue #1128. 2009-12-07 20:13:52 +00:00
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