Ansgar Becker
844d9c3640
feat: reverse foreign keys on "Foreign keys" tab in table editor, including an option to toggle the new listing
...
Refs #1825
2026-02-28 15:47:50 +01:00
Ansgar Becker
14f5468af2
refactor: outsource queries from GetRowCount into TSqlProvider
...
This required to introduce a third version of TSqlProvider.GetSql which works with named parameters packed into a TStringMap
2026-02-16 20:45:23 +01:00
Ansgar Becker
277c0a969a
refactor: outsource queries from GetCharsetTable into TSqlProvider
2026-02-16 15:28:02 +01:00
Ansgar Becker
a3374f3eb9
refactor: outsource queries from GetCollationTable into TSqlProvider
2026-02-16 13:45:19 +01:00
Ansgar Becker
4912dd8233
refactor: move mysql specific SQL snippets to its own TSqlProvider, don't use as default for all others
2026-02-15 19:41:14 +01:00
Ansgar Becker
f8f980572d
refactor: retrieve query for disabling and enabling foreign key checks from TSqlProvider
2026-02-15 19:00:29 +01:00
Ansgar Becker
fecd011d86
refactor: outsource 3 large queries from GetTableColumns into TSqlProvider
...
Refs #1880
2026-02-15 18:41:37 +01:00
Ansgar Becker
c450f516b7
refactor: replace FSQLSpecifities with a TSqlProvider, and outsource many hardcoded SQL queries to the dbstructures.* units
...
Refs #667 and #1880
2026-02-15 15:04:22 +01:00
Ansgar Becker
5434ee572b
fix: bad message with no library selected
...
Closes #1020
2025-10-16 17:21:03 +02:00
Ansgar Becker
3220d396bf
Issue #2068 : support MariaDB's new VECTOR data type in table designer, categorize as binary
2025-02-14 09:54:59 +01:00
Ansgar Becker
7588e6afe2
Issue #1426 and issue #1768 : minor: do not try to set MARIADB_OPT_TLS_VERSION option with libmysql
2024-11-18 06:25:04 +01:00
Ansgar Becker
ce3d29a99c
Issue #1964 : support MariaDB's INET4 and INET6 data types
2024-06-14 13:59:40 +02:00
Ansgar Becker
d549080cbd
Issue #1768 :
...
* Dynamically set the used MYSQL_OPT_* constants for libmysql v8+, to fix the reported SEC_E_ALGORITHM_MISMATCH connection error on SSL-enabled sessions.
* add libmysql-8.4.0-64.dll to installer
* remove deprecated and no longer used mysql_ssl_set() function
2024-05-28 19:33:54 +02:00
Ansgar Becker
4ac4152e7d
Support CITEXT columns and categorize as text type, so these show up in foreign values pulldown editor of data grid. Closes #1931
2024-04-22 20:30:34 +02: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
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
0f61ad64fe
In a connection error, give the user a hint to better use the default library. A similar hint was yet only given on SSL error messages, but libmysql.dll seems to end with a misleading "access denied" error in some cases. Related to #722 , #980 and https://stackoverflow.com/questions/71161296/unable-to-connect-to-mysl-container-via-heidisql-via-localhost
2022-02-19 14:50:44 +01:00
Ansgar Becker
8f36560cc0
Issue #1539 : overtake some new CLIENT* constants from include\mysql_com.h, and activate CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA in MySQL/MariaDB mode
2022-02-13 20:54:07 +01:00
Ansgar Becker
33eb0032d9
Issue #1169 : implement TInterbaseConnection.GetTableColumns and InterbaseDatatypes
2021-10-30 12:44:10 +02: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
89f1f7f5fa
Issue #1453 : support UINT columns in SQLite mode
2021-10-06 18:59:53 +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
6e053ee640
Issue #1321 : move jsonb data type to text category, to activate the text editor for such fields
2021-02-25 21:20:22 +01:00
Ansgar Becker
0c6b609cf2
Add support for JSONB column types in PostgreSQL. Closes #606
2020-12-19 08:59:27 +01:00
Ansgar Becker
1aa8605d21
Support regproc and regprocedure types on PostgreSQL, so these don't use SUBSTR() in data grid
2020-12-15 17:57:50 +01:00
Ansgar Becker
8201ac6169
Leave Datatype.MaxSize for CSV layout detection, and introduce Datatype.DefaultSize for deciding whether a column gets a length definition. Closes #1245
2020-12-03 08:00:59 +01:00
Ansgar Becker
2bc5926db5
Re-add CURRENT_TIMESTAMP function, removed accidentally in last update. See https://www.heidisql.com/forum.php?t=37278
2020-12-01 19:05:19 +01:00
Ansgar Becker
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
Ansgar Becker
c4dbdfe948
Enable loading SQLite extensions. Closes #1186
2020-10-12 21:03:22 +02:00
Ansgar Becker
5d1695c445
Extract contents for MySqlFunctions array out of MariaDB 10.5 help tables. Leave original function sorting by category, don't sort by their name.
2020-07-27 18:23:52 +02:00
Ansgar Becker
9d95fc010c
Fix alias of PostgreSQL column type TIMESTAMPTZ with missing space. Closes #1071
2020-06-27 16:27:15 +02:00
Ansgar Becker
fb41077613
Stop showing a length for MySQL/MariaDB data types which don't support it. Even leave the length away for TEXT + BLOB types if it's the maximum (default) value. Closes #1023
2020-05-07 18:32:15 +02:00
Ansgar Becker
97fc069578
Set callback for SQLite's callback_needed event, and implement both required callback procedures. Fixes "No such collation sequence: xyz" when inserting or deleting rows in tables using some unknown collation. Closes #1000 .
2020-04-25 22:05:28 +02:00
Ansgar Becker
f241e4b69e
Override "main" database name with custom one. Closes #948
2020-03-26 12:20:32 +01:00
Ansgar Becker
5ee148bdbd
Give CHAR data type a separate detection, besides VARCHAR, for SQLite. Closes #870
2020-01-29 21:24:23 +01:00
Ansgar Becker
3b84ccc696
Issue #12 : SQLite allows any column type declaration, even custom types.
...
* support those declarations which are commonly used in other database systems, and for which Heidi has a fitting grid editor
* move UNIQUEIDENTIFIER from text group to binary group
* remove useless native type ids and empty descriptions
2020-01-19 07:26:00 +01:00
Ansgar Becker
c994e43e07
Issue #12 : detect UNIQUEIDENTIFIER column type, and sort that into the text type group
2020-01-18 18:18:38 +01:00
Ansgar Becker
e6fd4e4d63
Add missing CHAR datatype to SQLite column detection. Closes #858
2020-01-18 08:19:33 +01:00
Ansgar Becker
d9e2123cb2
Issue #12 : detect SQLite data type of non-table result columns, using sqlite3_column_type(). See https://stackoverflow.com/questions/59749418/sqlite-c-api-equivalent-to-typeofcol
2020-01-15 22:48:55 +01:00
Ansgar Becker
08fa8a0c3b
Detect SQLite BOOL columns as TINYINT
2020-01-14 21:15:49 +01:00
Ansgar Becker
c9d3d3c38d
Issue #12 : Proper implementation of TSQLiteQuery.ColIsPrimaryKeyPart()
2020-01-01 19:12:10 +01:00
Ansgar Becker
cc8203043a
Add two newer header constants for MySQL/SSL, yet unused by HeidiSQL
2020-01-01 11:59:37 +01:00
Ansgar Becker
5146026ba6
Issue #12 : Detect more granular data types on SQLite, which we need for the table designer and other things
2020-01-01 11:56:43 +01:00
Ansgar Becker
616715987e
Issue #12 : Support query batch fired in one go, and get multiple results per query running. Using pzTail out parameter of sqlite_prepare_v3(), not sqllite_next_stmt(), which returns statements from previously fired queries.
2019-12-29 09:52:11 +01:00
Ansgar Becker
541d4e2e90
Issue #12 : Clean up code, attempt to get multiple SQLite results per query working, move FStatementNum from TDBConnection to the only caller TMySQLConnection
2019-12-28 09:29:29 +01:00
Ansgar Becker
efb4459288
Issue #12 : Implement TSQLiteQuery.TableName, and
...
* free Psqlite3_stmt later, in TSQLiteGridRows.Destroy, not in TSQLiteConnection.Query directly after execution
* move code from TAdoDBQuery.TableName to TDBQuery.TableName, as this is generic SQL parsing which works for all layers (though not so reliable)
2019-12-27 08:30:25 +01:00
Ansgar Becker
ed89b54b28
Issue #12 :
...
* define and use SQLite column datatypes, at least the few groups (int, text, real, blob, date)
* TSQLiteConnection.GetThreadId now returns the application process id, as there is no connection pid in SQLite
2019-12-25 12:34:36 +01:00
Ansgar Becker
e67ab11279
Introduce experimental implementation of SQLite support, alias "Jingle Bells v2", for issue #12
2019-12-24 14:32:19 +01:00
Ansgar Becker
94b398beb2
Add CURRENT_TIMESTAMP to function list, especially for the dropdown in the default editor. See https://github.com/HeidiSQL/HeidiSQL/issues/74#issuecomment-559321533
2019-11-28 06:38:01 +01:00
Ansgar Becker
2b3b11c9c3
Update MySQL/MariaDB function list and their help texts
2019-11-03 13:45:24 +01:00