1368508685
Do not display grid cells as modified if new value is effectively the same as the old one. Especially minimizes INSERTs for "Duplicate row" feature.
2010-05-10 23:34:36 +00:00
6355102eb0
In editing mode, when cursor points to a virtual edited row, we need to call mysql_data_seek() in SetRecNo, even if FRecNo points the previous row. Do that by checking for nil. Fixes issue #1931 . Fixes issue #1919 .
2010-05-10 23:26:47 +00:00
1319abe2c0
Number magic:
...
* Rewrite UnformatNumber() so it throws away characters other than digits, thousand or decimal separator. This is critical for adding WHERE clauses, where it was previously possible to update a whole table column accidentally: "UPDATE mytable SET numcol=123# WHERE id=567"
* Do not fetch last insert id when user passed a number to it. In that case LAST_INSERT_ID() would return 0
2010-05-10 22:04:21 +00:00
1838a0eaa7
Use original name of a foreign key in DROP FOREIGN KEY query when renaming. Fixes issue #1930 .
2010-05-10 18:51:10 +00:00
10ae384a81
Avoid attempt to access item index -1 of internal value list when nothing is selected in an enum editor. Fixes issue #1903 .
2010-05-10 18:37:07 +00:00
6c05e7f6c8
AnyGridEnsureFullRow does surely fail on non-result grids. Avoid AV when copying cell text. Fixes issue #1929 .
2010-05-10 18:28:08 +00:00
556b0f54a1
Silence compiler warning
2010-05-09 20:46:51 +00:00
2d8633ffcf
Enhance auto generation of foreign key names, after user selected the same reference table as in another key, a counter is appended (FK_tbl_rfr_2, FK_tbl_rfr_3, ...). Fixes issue #1894 .
2010-05-09 10:04:42 +00:00
361580a03c
Don't throw exceptions when user tries to set disallowed delimiter, just pop up an error message. Fixes issue #1899 . Also, bring some nearby stuff in ExecSQLClick() into the right order: Show hour glass, display number of current query in status bar, and optimize some minor stuff.
2010-05-08 23:20:11 +00:00
e258f7ccec
mysql_free_result() frees memory but does not set pointer to nil. Do that by hand, so later checks for nil don't run into AVs. Probably fixes issue #1901 .
2010-05-08 17:49:47 +00:00
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
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
de4c929020
Fix image view in grid cell.
2010-05-08 13:53:14 +00:00
634f5cb951
Ensure column correct lengths are set in SetRecNo. Fixes issue #1921 .
2010-05-08 13:50:32 +00:00
88a524a1f0
Validate state of grid actions when query grid gets or loses focus. Fixes issue #1882 .
2010-05-08 12:34:46 +00:00
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
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
30ba2df509
Fix wrong example label in trigger editor. Fixes issue #1924 .
2010-05-08 10:26:21 +00:00
6b6dd6f973
Reset indicators of currently loaded db.table in DataGrid when disconnecting. Fixes issue #1898 .
2010-05-08 08:29:50 +00:00
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
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
0b1c6d350c
Enable "Delete row(s)" action and friends after refreshing data grid. Fixes issue #1922 .
2010-05-07 17:16:24 +00:00
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
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
42899facff
Update server version panel also on reconnect. Fixes issue #1891 .
2010-05-06 18:41:17 +00:00
dc62492a34
Avoid exceeding range of FColumns within ColAttributes(). Fixes issue #1908 .
2010-05-06 18:17:41 +00:00
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
8579ca2841
Avoid "No database selected" error when fetching trigger details in SQL export. Fixes issue #1883 .
2010-04-27 19:47:20 +00:00
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
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
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
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
9cb913c87d
Target connection was removed + added from target pulldown, but not reselected afterwards. Fixes issue #1890 .
2010-04-23 19:01:17 +00:00
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
49dce8e08b
Overcome MySQL bug #41907 - SHOW EVENTS shows events in other schema.
2010-04-22 16:24:28 +00:00
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
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
9b786c81e0
Make RefreshActiveTreeDB more safe against follow up errors, non responding db tree.
2010-04-19 22:27:03 +00:00
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
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
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
809291cf45
Add line break between each VALUES line of data. Fixes issue #1877 .
2010-04-18 21:33:45 +00:00
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
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
5b08b82947
Clear grid filter editor when refreshing data or going to different table. Fixes issue #1873
2010-04-17 13:55:25 +00:00
b18866b252
Fix unresponsive Esc key in binary cell editor. Fixes issue #1861 .
2010-04-17 11:30:54 +00:00
b1ab76e0ba
Display first available text column value when editing InnoDB contents. Fixes issue #1849 .
2010-04-14 22:45:12 +00:00
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
ffc434de4f
Fix logic for loading snippet file via double click. Fixes issue #1857 .
2010-04-14 17:35:30 +00:00
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