275 Commits

Author SHA1 Message Date
9ec40f0703 When deleting tab backup file, delete it to recycle bin, for cases where the user did that by accident. Same for snippet file and overwritten export/zip file. See https://www.heidisql.com/forum.php?t=39355 2022-06-08 19:25:33 +02:00
25d15d8b41 Optimization: set up a single TSynMemo instance instead of all, e.g. when creating a new query tab 2022-05-25 13:16:27 +02:00
be7a697733 Fix crash when SQL export fails to create output directory, cancel operation in that case 2022-03-27 09:04:39 +02:00
d46716ff2e Issue #1503: reactivate DPI awareness, and try to read/write component dimensions DPI independently 2021-12-26 13:06:24 +01:00
c23e5d3731 Fix generating mysqldump cli argument --databases with --tab 2021-10-17 11:50:58 +02:00
535940872f SQL export: don't generate ALTER TABLE..DISABLE/ENABLE KEYS for InnoDB tables, which don't support that, generating a notice instead. Closes #1185 2021-10-17 11:46:36 +02:00
fc60303a58 Issue #1457: fix missing SET TIME_ZONE.. on export target server 2021-10-08 07:21:12 +02:00
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
ed28bcbf6f SQL export: Add popup menu action for copying mysqldump command line 2021-06-25 08:56:18 +02:00
ee69a049fd Set TIME_ZONE system variable for reading as well, not only for the export output. See https://www.heidisql.com/forum.php?t=38078 2021-06-25 07:38:52 +02:00
2ea193992c Reset timezone in SQL exports to zero offset, to be independent from local date/times. See https://www.heidisql.com/forum.php?t=38078 2021-06-23 21:21:39 +02:00
cb1024b048 Fix more potential theme related EAccessViolation's, due to Action:=caFree in OnClose event of modal forms. Their caller now frees these modal forms. In non-modal forms, keep caFree in OnClose but remove existing OnDestroy events, moving code to OnClose instead.
https://www.heidisql.com/forum.php?t=38043
https://stackoverflow.com/questions/2075405/how-to-close-non-modal-form-in-delphi
2021-06-22 20:37:34 +02:00
28d25e3334 Revert a144466e7137f1c33c39c231dbeb4cd98dfc4ffa : query exact row count from tables and views. See https://www.heidisql.com/forum.php?t=37983 2021-06-10 07:42:50 +02:00
a144466e71 Experimental: query exact row count from tables and views, in data tab and table tools 2021-06-03 09:27:13 +02:00
dd38ba4f6f Code cosmetic: rename implodestr() to Implode() 2021-06-03 08:32:06 +02:00
b5449c055d Table tools: auto-fit column widths with each result grid update, and show execution time in main status bar 2021-05-20 22:34:16 +02:00
cdc8481471 First attempt to manipulate the CREATE table code in SQL exports when source is a MySQL server and target is MariaDB. This just removes the incompatible "COLLATE xyz" clause from virtual varchar columns. 2021-05-12 18:16:21 +02:00
5b86687f2c Database search feature: prefer a normal log line for tables with no matching data type, so the "Found rows" column has a number, to fix wrong sorting 2021-03-12 09:10:04 +01:00
8ab0fa1fa0 Auto-create directory path specified in SQL export target filename. Closes #1086 2020-12-19 08:48:33 +01:00
281a53b88a Limit rows per exported INSERT to 1000 for MSSQL. Introduced MaxRowsPerInsert property per connection type. 10000 for all other types. Closes #1189 2020-12-17 11:43:29 +01:00
c09d93e642 Prevent "Variable 'sql_notes' can't be set to the value of 'NULL'", via IFNULL() wrap. Saw that in the crash reports with the latest release. Related to issue #756. 2020-12-13 14:18:12 +01:00
fc9320b8cd Remove old workaround for exporting between MySQL 4 and 5, where the TYPE/ENGINE clause is incompatible between source and target server. This breaks exporting identifiers with these keywords in them. Closes #1222 2020-11-17 17:51:54 +01:00
26869dc27a Issue #807: add SQL editor in "Find on server" dialog, to support complex comparisons e.g. on binary values without quotes "=0xaa00" 2020-10-24 18:13:40 +02:00
349045066f Set SQL_NOTES to 0 in SQL export, to silence warnings due to unsupported "ALTER TABLE .. DISABLE/ENABLE KEYS" on InnoDB tables. Closes #756 2020-10-22 12:28:31 +02:00
f8e4b35a7f Make "USE xyz" query dependent on the target server system, when exporting data to another server. Fixes incompatible SQL for PostgreSQL, and most probably for SQLite. See https://www.heidisql.com/forum.php?t=36231 2020-10-15 18:50:27 +02:00
f2af43f1e0 Fix all 11 compiler hints and 5 warnings 2020-08-06 13:49:32 +02:00
7abc1d1f67 Prefer ILIKE over LIKE operator on PostgreSQL servers, for auto-generated queries, to overcome errors with double columns. See https://www.heidisql.com/forum.php?t=36500 2020-07-02 14:00:36 +02:00
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
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
4a440229a4 Use TDBObject.TableColumns for views as well, handle these like tables. Fixes crash when editing view data, when trying to create a table copy of a view, and some more. 2020-02-02 16:35:10 +01:00
fdb5a61024 Issue #12: Support "find text on server" tool with compatible queries in SQLite 2020-01-19 08:04:36 +01:00
340cd5066c Unify name and case of information_schema, per connection. Finally. Closes #855 2020-01-16 08:03:20 +01:00
b45a0d57c7 Issue #12: Implement TDBConnection.GetTableColumns and .GetTableKeys (todo: .GetTableForeignKeys), as a replacement for the error prone ParseTableStructure. SQLite columns and keys should be parsed correctly now, MS SQL and PostgreSQL may now have some glitches to fix. 2020-01-08 15:28:36 +01:00
d5968e1efe Issue #703: Sort charset drop down on "Bulk table editor" alphabetically, and increase height of drop down scrollbox to 16 items 2019-12-14 15:17:22 +01:00
17f6cb851a Issue #88: remove definer clause also for views and events, if wanted 2019-11-13 14:40:16 +01:00
be689edaec SQL export: add drop down menu item for removing DEFINER clauses from triggers, procedures and functions 2019-11-13 14:29:26 +01:00
ed5a4ace88 Issue #88: consistently use DBObject.CreateCode also for trigger exporting 2019-11-13 12:56:32 +01:00
e2acb2122e Populate target database drop-down only with unchecked database nodes in object tree, to prevent overwrites. Closes #775 2019-10-27 08:38:26 +01:00
53b8f544c2 Remove useless DPI helper panel from tabs in routine editor, table editor and table tools dialog 2019-07-25 07:44:04 +02:00
63fdc3e08c Move workaround for broken split buttons after translation into TExtForm.Create, so we have it once and the caller does not need to care about it. See https://sourceforge.net/p/dxgettext/bugs/80/ 2019-07-23 13:36:56 +02:00
fcdf323086 Let TExtForm translate all strings on a form, to reduce the code in any FormCreate event 2019-07-21 20:12:13 +02:00
88a9e53f0d Remove remainders of DPI related code, and move TExtForm.AddSizeGrip procedure to property .HasSizeGrip. Uses TSizeGripXP instead of TSizeGripThemed, as this looks quite the same. 2019-07-21 19:44:05 +02:00
c31cae2060 Giving up on high DPI readiness - remove tweaks which mostly don't work as expected, and even differently on various computers. Instead, let Windows blur fonts. 2019-07-18 20:53:53 +02:00
92c8f62b85 High DPI:
* remove ParentFont flag from forms again (introduced in 9cdcd631454f6f9e999893ea89fcf502d994474c for #213). This just inherits from default Windows settings.
* instead, scale font size in InheritFont(), and move that to the new TExtForm class
* mark app with PerMonitorV2 support
2019-07-17 21:59:18 +02:00
2a91a13b42 Issue #677:
* drop workaround for application crash on WinXP, when loading newer libmariadb (see #79)
* raise TDbLib's own exception instead of baking an own one with less details. Probably helps in debugging: https://www.heidisql.com/forum.php?t=34044
* rename EDatabaseError to EDbError, to overcome naming conflict in DB unit
* load libpq.dll always with path, which should anyway work better than without it. See http://www.heidisql.com/forum.php?t=22514
2019-07-08 20:23:05 +02:00
4f9613b05c High DPI: fix growing window dimensions on each opening. Related to #378 2019-07-07 21:22:19 +02:00
1d6a415f5f Refactor: rename mysql_structures unit neutrally to dbstructures 2019-06-22 14:26:41 +02:00
fb02867059 Search on server: Lower-case columns after casting to text, to prevent data type error: "function lower(integer) does not exist". Closes #235 2019-05-03 07:59:47 +02:00
91c8ff13f0 Cheat when calculating percentage of done work, when exporting tables and data, so we never get more than 100%. Closes #180 2019-04-17 07:57:35 +02:00
85a8355e1d Add new log category lcScript, for queries from large scripts and import operations. By default disabled, which should speed up importing large files. 2019-04-16 07:19:47 +02:00