Commit Graph

327 Commits

Author SHA1 Message Date
Ansgar Becker
838e461805 Table editor: fix expression for newer MariaDB servers when searching the explanation for the "incorrectly formed" error 2024-03-01 07:29:04 +01:00
Ansgar Becker
cbd4854f4a Table editor: when user runs into the cryptic "constraint is incorrectly formed" message, append a more meaningful line from SHOW ENGINE INNODB STATUS. 2024-02-28 11:22:58 +01:00
Ansgar Becker
95151d6a3e Issue #1512: add basic support for indexes with descending column direction 2024-02-02 08:16:37 +01:00
Ansgar Becker
f9297d4c7d Use the same hotkey (Ctrl+S) for saving a table/trigger/... as for saving a query file. Closes #1619 2023-11-03 12:43:07 +01:00
Ansgar Becker
da4a327eee Fix sporadic crashes in various calls to [TWinControl].SetFocus, with the new class helper .TrySetFocus 2023-10-16 20:50:10 +02:00
Ansgar Becker
86a8840cc0 Introduce TClipboardHelper.TryAsText, suppressing crashes when the OS blocks access to the clipboard. Replaces my previous GetClipboardAsText implementation. 2023-10-10 07:12:15 +02:00
Ansgar Becker
495ced5bae Issue #861: same style for row id column in grid and table editor 2023-10-10 06:42:52 +02:00
Ansgar Becker
9f05f5ff8b Fix crash in various places where we just try to get the current clipboard text 2023-10-09 07:24:24 +02:00
Ansgar Becker
d28d03b6dd Highlight active tab of most page controls, by adding greyscale icons to image list and using these for all inactive tabs. See https://www.heidisql.com/forum.php?t=41323 2023-10-03 13:34:28 +02:00
Ansgar Becker
7d9f59381f Support serial columns in Posgres, which is different from auto_increment on MySQL. Affects grid editing and table designer. Closes #279 2023-05-13 10:03:07 +02:00
Ansgar Becker
82b1a0fe8f Support ON UPDATE SET DEFAULT and the same for ON DELETE in PostgreSQL foreign keys. See https://www.heidisql.com/forum.php?t=40413 2023-03-06 20:12:13 +01:00
Ansgar Becker
0d9de512cd Remove unit scopes from project settings, prefer fully qualified unit names in uses clauses. Enhance readability and compiler performance. 2022-12-26 17:59:19 +01:00
Ansgar Becker
c7dc63706d Support comments on table indexes via table designer. Closes #128 2022-07-18 17:02:36 +02:00
Ansgar Becker
965e88b579 Delphi 11.1: fix VirtualTree package files, fix missing uses clauses, and some newly required type casts 2022-06-18 18:08:00 +02:00
Ansgar Becker
c4085bed4e Refactor: move structures for specific network types out of dbstructures, into their own dbstructures.xxx.pas, and include const.inc in project sources 2022-04-23 11:38:26 +02:00
Ansgar Becker
63a229e35a Issue #1256: restrict altering existing SQLite tables, apart from a few things 2022-04-22 13:08:34 +02:00
Ansgar Becker
e27d9c1b96 Refactor: create and use self explanatory TDBObjectEditor.ObjectExists method 2022-04-22 12:42:37 +02:00
Ansgar Becker
3d55507881 Table editor: force repaint of column list after click on "delete column", which otherwise still displays the deleted columns until the user hovers over it 2022-04-22 12:20:28 +02:00
Ansgar Becker
e48fcf2d0c Issue #945: give id column in table editor slightly more width to let the text fit in 2022-04-22 10:10:11 +02:00
Ansgar Becker
0c3b6f9deb Issue #1256: create spRenameColumn template and prefer that in SQLite and Postgres 2022-04-22 09:09:44 +02:00
Ansgar Becker
1e78543931 Issue #1521: get back partition clause into table editor by fixing the detection for CREATE code without a closing comment at the end 2022-04-22 09:07:09 +02:00
Ansgar Becker
f48f8445ca Limit icons on column in table editor to show only one per key type. Closes #945 2022-04-21 17:54:02 +02:00
Ansgar Becker
89f034cc8e Support renaming columns in SQLite, and generate separate ALTER TABLE queries for each change. Closes #1256 2022-04-21 09:20:33 +02:00
Ansgar Becker
e505b54bdd Issue #1503: fix unsaved setup of columns in lists on object editors (table + routine editors effectively are the only ones with lists) 2022-02-21 17:35:25 +01:00
Ansgar Becker
142e26ec22 Issue #1503: move SaveListSetup and RestoreListSetup to extra_controls unit, and handle column widths DPI independently 2021-12-26 13:58:25 +01:00
Ansgar Becker
9baeb9f018 Outsource large list of MySQL functions into separate .ini files, one per server type. Todo: definitions for SQLite and Interbase. 2021-10-11 21:32:55 +02:00
Ansgar Becker
a469d89227 Issue #1169: give items in TDBDatatypeIndex a different prefix (dt => dbdt), to fix a conflict with those from Delphi's database components 2021-06-26 17:44:50 +02:00
Ansgar Becker
dd38ba4f6f Code cosmetic: rename implodestr() to Implode() 2021-06-03 08:32:06 +02:00
Ansgar Becker
07e1786d46 * fix wrong substring offset in TForeignKey.SQLCode
* fix TForeignKey.ReferenceTableObj with dots in database name
* use the fixed TForeignKey.ReferenceTableObj instead of .ReferenceTable in two places
Closes #1364
2021-05-23 09:25:08 +02:00
Ansgar Becker
5204ac54fa Set explicit default value "NO ACTION" for ON UPDATE/DELETE clauses when creating a foreign key. Closes #1320 2021-02-27 11:08:57 +01:00
Ansgar Becker
1a7cc67e37 Simplify more code using the new PopupComponent() function 2021-01-16 18:36:01 +01:00
Ansgar Becker
e7baba4776 Issue #75: pimp up context menu for indexes tab, and assign to foreign keys tab and check constraints tab as well 2021-01-16 17:19:35 +01:00
Ansgar Becker
461c7343f8 Issue #75: get "Add constraint" and "Delete constraint" buttons working, provide function list when editing check clause, and fix some more issues 2021-01-16 16:29:44 +01:00
Ansgar Becker
958d62c9b1 Issue #75: create editable list for check constraints in table editor 2021-01-12 21:41:20 +01:00
Ansgar Becker
6fd54fb9d4 Display number of indexes and foreign keys in caption of their tabs within the table editor. Helpful for knowing the number without having to activate their tab. 2021-01-04 16:44:50 +01:00
Ansgar Becker
34db4c7abd Rename TTableColumn.Expression field to the more unique and clear .GenerationExpression, also for distinction from the upcoming CHECK expression. 2021-01-03 15:05:23 +01:00
Ansgar Becker
ea944b85fe Fix scope for FStatus symbol of TTableColumn 2021-01-03 14:57:08 +01:00
Ansgar Becker
5e675a51d8 Code cleanup: move some node index constants to TQueryTab, and probably prevent AV in treeQueryHelpersInitChildren 2020-12-16 18:15:52 +01:00
Ansgar Becker
3e7ed86f9b Remove default text from column when changing data type to one that does not support a default text. See https://www.heidisql.com/forum.php?t=37142 2020-11-01 11:40:41 +01:00
Ansgar Becker
1585e0dfa3 Allow free typing in collation drop-down for collations in a column. Set to empty string if user typed a non existent item. See https://www.heidisql.com/forum.php?t=37117 2020-10-29 21:12:25 +01:00
Ansgar Becker
d970b2e809 Sort collations alphabetically, in drop-down of column editor in table designer. Closes #828 2020-10-22 12:06:48 +02:00
Ansgar Becker
c113ff6ec7 Use ValidateNode to initialize all column nodes early, so they keep their FColumn data after click on Remove button. Closes #245 2020-06-25 23:22:35 +02:00
Ansgar Becker
3eb3480e1c Get rid of global esc() function (which always refers to MainForm.ActiveConnection) and prefer the method's or unit's connection object instead 2020-05-10 13:41:15 +02:00
Ansgar Becker
7c15ede023 Fix crash by click on "Add column" in table editor, when columns list has a minimum height. See https://www.heidisql.com/forum.php?t=35766 2020-03-09 21:05:40 +01:00
Ansgar Becker
f6c7c0a6af Support dropping schema on PostgreSQL. Closes #76 2020-03-03 17:36:55 +01:00
Ansgar Becker
05d02627f3 Make TConnectionParameters.IsMySQL specific to MySQL only, and rename the grouped type checks to IsAnyMySQL, IsAnyMSSQL etc. This way the status bar now shows "MySQL", not "MySQL or MariaDB" 2020-02-22 09:06:37 +01:00
Ansgar Becker
40908f1bef Issue #885: Move types of table keys from global scope constants to class constants in TTableKey definition, to make them stable against mix-ups 2020-02-15 12:51:08 +01:00
Ansgar Becker
ad024cb74b Reference table of a foreign key is prefixed with its database, which causes the table editor to display no columns in the dropdown editor. Fix that by outsourcing some logic from main unit into TForeignKey.ReferenceTableObj. Closes #158 2020-02-11 16:56:41 +01:00
Ansgar Becker
56e541a478 Introduce read-only mode for grid editors. Closes #631 2020-02-06 12:29:35 +01:00
Ansgar Becker
7ab47a3143 Detect foreign keys in MS SQL, and provide foreign values drop down in data grid. Closes #150 2020-01-26 22:23:12 +01:00