Commit Graph

5018 Commits

Author SHA1 Message Date
Ansgar Becker
593520dc1b Prefer server over local date/time as default value when starting grid editor on a NULL date/time. Fixes issue #1835. 2010-05-08 17:05:38 +00:00
Ansgar Becker
ae4b7faacd Binary column type detection is still a mess. But now TMySQLQuery parses its column names from a SHOW CREATE TABLE grid editing can benefit from the parsed stuff. Effect: data type of LEFT(bincol, 256) in data grid is re-detected when going into editing mode. Still displays these as green text before editing is tried, which could probably be solved by immediately call PrepareEditing for DataGrid result. 2010-05-08 15:53:37 +00:00
Ansgar Becker
de4c929020 Fix image view in grid cell. 2010-05-08 13:53:14 +00:00
Ansgar Becker
634f5cb951 Ensure column correct lengths are set in SetRecNo. Fixes issue #1921. 2010-05-08 13:50:32 +00:00
Ansgar Becker
88a524a1f0 Validate state of grid actions when query grid gets or loses focus. Fixes issue #1882. 2010-05-08 12:34:46 +00:00
Ansgar Becker
fa9daf9406 Before inserting a new grid row, ensure current row modifications don't throw SQL errors. Related to issue #1882. 2010-05-08 12:19:36 +00:00
Ansgar Becker
db5c5a1dc3 Ensure FCurrentResults is set, also in the special case when result has 0 rows, to avoid AVs in DatabaseName() and TableName(). Fixes issue #1917. 2010-05-08 10:37:34 +00:00
Ansgar Becker
30ba2df509 Fix wrong example label in trigger editor. Fixes issue #1924. 2010-05-08 10:26:21 +00:00
Ansgar Becker
6b6dd6f973 Reset indicators of currently loaded db.table in DataGrid when disconnecting. Fixes issue #1898. 2010-05-08 08:29:50 +00:00
Ansgar Becker
ede2fab6f1 SaveModifications() should process all virtual rows, but ignore just inserted ones, so we can call InsertRow and then SaveModifications for yet modified rows. Fixes issue #1918. 2010-05-08 08:14:35 +00:00
Ansgar Becker
18c08dc4d1 Handle all types of exceptions when renaming database, not only connection related ones. Fixes issue #1912. 2010-05-07 17:22:28 +00:00
Ansgar Becker
0b1c6d350c Enable "Delete row(s)" action and friends after refreshing data grid. Fixes issue #1922. 2010-05-07 17:16:24 +00:00
Ansgar Becker
646006715b Avoid access violation in EnsureFullRow when row cannot be found. Just return false in that case and block editing. Fixes issue #1910. 2010-05-07 15:43:08 +00:00
Ansgar Becker
7ce555ff1a Straighten sort logic in lists and db tree:
* Let both header clicks and TDBObjectComparer consistently use the same compare callback function CompareAnyNode()
* When refreshing a list, VT.SortTree sorts nodes if toAutoSort is set. Then, selected nodes are mostly different ones than before refreshing. Also, what GetVTCaptions did was only looking after the first column caption which can exist besides duplicates. So, for now, do not restore selected nodes after refreshing a list, which is now more standard behavior.
Fixes issue #1911.
2010-05-06 22:46:35 +00:00
Ansgar Becker
42899facff Update server version panel also on reconnect. Fixes issue #1891. 2010-05-06 18:41:17 +00:00
Ansgar Becker
dc62492a34 Avoid exceeding range of FColumns within ColAttributes(). Fixes issue #1908. 2010-05-06 18:17:41 +00:00
Ansgar Becker
05b07eb8f2 Implement editing capabilities into TMySQLQuery, and make query results editable by using all the same events as in DataGrid. Most probably some bugs to fix now.
* Fixes issue #723
* Fixes issue #873
2010-05-05 21:39:15 +00:00
Ansgar Becker
8579ca2841 Avoid "No database selected" error when fetching trigger details in SQL export. Fixes issue #1883. 2010-04-27 19:47:20 +00:00
Ansgar Becker
b3b1710c35 Introduce EDatabaseError exception class, so we're able to handle only those and let others raise the exception up to MadExcept. Helps finding non-database related AVs as users are able to get the callstack now. Similar to r3292 but more consistent all over the code now. 2010-04-24 13:56:57 +00:00
Ansgar Becker
6bb8bb6875 Keep SQL errors quite but raise unnormal access violations, so the exception handler can catch them. 2010-04-23 20:51:36 +00:00
Ansgar Becker
764388b89c Export views not at the *very* end of an SQL export, but at the end of one selected database. Important when user selects items from more than one database. Fixes issue #1887. 2010-04-23 20:38:41 +00:00
Ansgar Becker
65bf7f09a1 Fix duplicated header (in multi-db mode) and missing footer (in no-data-mode) in SQL export 2010-04-23 20:29:34 +00:00
Ansgar Becker
9cb913c87d Target connection was removed + added from target pulldown, but not reselected afterwards. Fixes issue #1890. 2010-04-23 19:01:17 +00:00
Ansgar Becker
30a0b22770 Remove no longer required workaround for smallint's in TUpDown for connection port. Seems that value was turned to integer in some recent Delphi version. 2010-04-22 16:38:39 +00:00
Ansgar Becker
49dce8e08b Overcome MySQL bug #41907 - SHOW EVENTS shows events in other schema. 2010-04-22 16:24:28 +00:00
Ansgar Becker
8208177001 Rephrase notice for items which don't provide data in datagrid. Does not only apply for routines, also for views to which the user has no privileges. 2010-04-22 15:25:22 +00:00
Ansgar Becker
97f01a175b Move database filter again from mainform to session manager, so people without privilege to run SHOW DATABASE are not stuck. Fixes issue #1485. Also, allow to see available databases when user does a dropdown. Also, simplify logic for refreshing database list in mainform. 2010-04-22 15:16:27 +00:00
Ansgar Becker
9b786c81e0 Make RefreshActiveTreeDB more safe against follow up errors, non responding db tree. 2010-04-19 22:27:03 +00:00
Ansgar Becker
71ae99d225 Do not trigger OnDBObjectsCleared in TMySQLConnection.Destroy, to avoid loop backs to connection instance which triggers AVs. Fixes issue #1878. 2010-04-19 22:20:04 +00:00
Ansgar Becker
604672f3d8 Attempt to slightly simplify logic for refreshing database tree node after adding/renaming a db object. 2010-04-18 23:15:20 +00:00
Ansgar Becker
8c6ed30ffa Scale controls of object editors for large DPI mode in OnCreate, not in Init(). Fixes issue #1865. 2010-04-18 21:46:13 +00:00
Ansgar Becker
809291cf45 Add line break between each VALUES line of data. Fixes issue #1877. 2010-04-18 21:33:45 +00:00
Ansgar Becker
dfb19d1d1d Refreshing ListTables after creating a table from outside did not make that new table visible in database tree. Fixes issue #1876. 2010-04-18 11:24:29 +00:00
Ansgar Becker
016105220c Lower part of data type selector in table editor is hidden when exceeding lower edge of mainform. Decrease its height in such cases so that does not happen. Fixes issue #1864. 2010-04-18 09:40:50 +00:00
Ansgar Becker
5b08b82947 Clear grid filter editor when refreshing data or going to different table. Fixes issue #1873 2010-04-17 13:55:25 +00:00
Ansgar Becker
b18866b252 Fix unresponsive Esc key in binary cell editor. Fixes issue #1861. 2010-04-17 11:30:54 +00:00
Ansgar Becker
b1ab76e0ba Display first available text column value when editing InnoDB contents. Fixes issue #1849. 2010-04-14 22:45:12 +00:00
Ansgar Becker
46fd8f5e99 Handle geo spatial values like we handle binary data. Use hex editor, and fetch contents using BinColAsHex(). Fixes issue #1855. 2010-04-14 21:35:04 +00:00
Ansgar Becker
ffc434de4f Fix logic for loading snippet file via double click. Fixes issue #1857. 2010-04-14 17:35:30 +00:00
Ansgar Becker
be13be0114 Attempt to open session manager on that monitor on which the main form has just been created and moved to. Fixes issue #1826. 2010-04-13 17:33:45 +00:00
Ansgar Becker
09e4fda755 Quote any COLLATE clause in CREATE + ALTER TABLE statement. Fixes issue #1852. 2010-04-13 06:29:28 +00:00
Ansgar Becker
23247a53b4 Populate combobox with allowed foreign key values when editing InnoDB tables. Fixes issue #1849. 2010-04-12 21:38:12 +00:00
Ansgar Becker
75bca23433 Fix typo 2010-04-12 21:16:58 +00:00
Ansgar Becker
43e35c8192 Throw successive result sets from stored procedures away, until we have real support for multi results. Otherwise mysql_ping() crashes on the next query. Fixes issue #1850. 2010-04-12 21:03:13 +00:00
Ansgar Becker
6f9e2a88d2 Add support for hiding column headers to all lists, via a) context menu + b) via dragging out headers. 2010-04-11 23:57:51 +00:00
Ansgar Becker
f7abafca8f Include events in SQL export 2010-04-11 23:22:50 +00:00
Ansgar Becker
2cda425c39 Make SQL completion proposal optional. Fixes issue #1782. 2010-04-11 22:23:58 +00:00
Ansgar Becker
2790e5a94b Leave expansion state of db node after dropping one or more tables. Also, don't reset the whole db objects cache for all databases when only one db was involved. Fixes issue #1831. 2010-04-11 16:10:59 +00:00
Ansgar Becker
aef5f3b147 Modify Mainform.SelectedTable so that it always returns a new TDBObject, instead of passing an item of the connection's internal cache. Makes sure that the object editors (table editor e.g.) still has a valid object reference. See also http://www.heidisql.com/forum.php?t=5511#p5514 2010-04-11 13:36:42 +00:00
Ansgar Becker
f451d061eb Introduce 2 new columns in Host > Databases: "Last modification" and "Events". Plus:
* enhance db object lists for storing additional details like last modification and data size
* remove home brown Min() and Max() functions and use those from Math unit which are not restricted to Integers.
2010-04-11 12:03:07 +00:00