124 Commits

Author SHA1 Message Date
e521f7ab0c CSV import: add checkbox option for keeping dialog open after successful import, so the user may process multiple files with less clicks 2024-07-23 19:39:56 +02:00
322b78b8b4 CSV import: set default folder and filename in open-file-dialog to the one of the selected file 2024-07-23 19:18:38 +02:00
ac34c1271c Issue #1965: show mysql_info() output in log panel, after warnings 2024-06-21 12:57:23 +02:00
54bb0bab45 Issue #1965: show SQL warnings in forms: event editor, copy table, create database, insert files, load CSV 2024-06-19 17:09:46 +02:00
ad71496037 Warn the user about potential data loss when loading a (csv) file with encoding set to "auto-detect". There are still EEncodingError reports uploaded. 2023-11-05 10:05:13 +01:00
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
26baa5eb0d Issue #1503: replace remaining usages of TOpenTextFileDialog with new TExtFileOpenDialog 2022-02-06 13:49:09 +01:00
d46716ff2e Issue #1503: reactivate DPI awareness, and try to read/write component dimensions DPI independently 2021-12-26 13:06:24 +01: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
ac66de31bb Support filenames with accented chars in text file import dialog. Closes #1387 2021-06-15 07:46:58 +02:00
9eb37d0a02 Catch some potential file related exceptions in text file import. See https://www.heidisql.com/forum.php?t=37974 2021-06-06 08:26:12 +02:00
15b0242070 Fix crash in SetupSynEditors after CSV layout detector was opened and closed once. 2020-12-29 22:08:20 +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
5df6149db4 Issue #477: Implement CSV layout detection, in a new dialog, callable through a "<New table>" item. Detection yet limited to integers, floats and text column types. 2020-11-29 14:25:29 +01:00
42dc993743 Losen sql_mode during CSV import via client parser, to prevent integer columns from errors due to empty strings (see pm from Holger) 2020-11-23 17:44:24 +01:00
6c8c6a0204 Limit number of rows per extended INSERT to 1000 in CSV import dialog. Closes #326 2020-07-19 11:04:50 +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
dc054cc481 Fixing #327 2020-04-15 16:42:37 +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
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
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
b64b8bf3cf Exchange icon index of "Check all" button on CSV import dialog, to make it more intuitive (?). Closes #612 2019-04-16 19:50:53 +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
5aafc46fca Sort encoding names in CSV import dialog alphabetically. Closes #579. 2019-03-18 20:22:52 +01:00
9cdcd63145 Issue #213: Assign system or custom font once, to the application, and let all forms inherit that font, so there is no need to call InheritFont() for each form. 2018-10-25 19:24:45 +02:00
eed5629b0c Text file import: Support having (one) line feed at end of file. Closes #329 2018-08-19 08:52:18 +02:00
71dbb9ecb0 Give side-by-side group boxes on text import dialog the same width 2018-08-18 18:02:59 +02:00
5a8a4af29a Rename helpers unit to apphelpers, to overcome a naming conflict with the FireMonkey unit FMX.Canvas.GPU.Helpers. Closes #102. 2018-01-22 19:48:17 +01:00
4378e2b98f Remember selected encoding in several file-open-dialogs. See http://www.heidisql.com/forum.php?t=20868 2016-03-20 13:34:23 +00:00
f8e84b5871 Text import: Use very last value from last row, even if it's not followed by a field or line terminator. See http://www.heidisql.com/forum.php?t=18899#p18911 2015-07-14 09:48:14 +00:00
a60264b600 CSV import: Disable features supported in MySQL only, if active connection is not MySQL. See http://www.heidisql.com/forum.php?t=18899 2015-07-13 17:56:32 +00:00
2c7cf7ace0 Add "check/uncheck all" button to column selector in textfile import dialog. See http://www.heidisql.com/forum.php?t=13566 2014-11-08 14:28:42 +00:00
5506e385ae Introduce TPgConnection.GetCharsetTable, forgotten to implement yet. Fixes a crash in text import dialog.
* User report: http://www.heidisql.com/forum.php?t=16181
* Ticket at 2ndquadrant: https://support.2ndquadrant.com/rt/SelfService/Display.html?id=37948
2014-08-25 17:33:37 +00:00
d64662d17f Add fallback "DELETE FROM..." to CSV import dialog's option "truncate table", and even catch errors for both and show an error dialog in the end when both alternatives gave an error. Fixes issue #3339. 2013-11-26 05:37:04 +00:00
6e608f157e Replace out-dated code which does not compile in 64bit mode in helpers.SetWindowSizeGrip. Use a TForm descendant in the new unit "extra_controls". Code parts taken from http://www.delphigroups.info/2/4/326787.html 2013-11-01 14:54:13 +00:00
1a5d91e236 Revert r4503, except for the removed helpers.ScanNulChars() and helpers.RemoveNulChars(). Seem Delphi's encoding detection is totally broken. Also, TStreamReader has bugs and hangs on the second call to ReadTextfileChunk(). Most files should be read fine again, including those mentioned in issue #3331. Also fixes issue #3328.
TODO: fix reading specific UTF8 files, mentioned on http://www.heidisql.com/forum.php?t=13044
2013-09-08 05:34:11 +00:00
a38c70b99e * Try a new approach in helpers.OpenTextFile(), helpers.ReadTextfile() and helpers.ReadTextfileChunk(): Based on TStreamReader instead of TFileStream now, so we can finally rely on Delphi internals for detecting a file's encoding. Also, this should fix read errors in some UTF-8 files, e.g. mentioned on http://www.heidisql.com/forum.php?t=13044
* Remove helpers.DetectEncoding(). Use a separate TStreamReader in the only caller to detect the encoding of a selected file
* Remove helpers.ScanNulChar()
* Remove helpers.RemoveNulChars()
2013-09-04 07:53:44 +00:00
58b2a66800 Get column names from VIEW per IS.COLUMNS, not per SHOW COLUMNS, to support MSSQL here. Fixes empty grid results for MSSQL VIEWs. See comment #46 of issue #3212. 2013-08-05 04:15:01 +00:00
6371ff5557 Issue #3212: Introduce TDBConnection.QuotedDbAndTableName(), callable with a db and table string. Internally calls TDBObject.QuotedDbAndTableName(), so we get the schema between db and table if required. 2013-06-22 04:45:53 +00:00
645a9f3c7f Make message strings from const.inc translatable 2012-11-29 06:15:44 +00:00
f96288fce9 Translate string variables and literals in .pas files. TODO: translate constants. 2012-11-26 05:44:01 +00:00
ca1d94c87b Issue #557: Include gnugettext.pas from https://dxgettext.svn.sourceforge.net/svnroot/dxgettext/trunk/dxgettext/sample/ . And add basic code to all FormCreate events to translate their components in the future. 2012-11-10 14:28:44 +00:00