DynSQLite Library - SQLite support library

Started by Michele, November 09, 2026, 12:12:02 AM

Previous topic - Next topic

Michele

Quote from: Robert on November 10, 2026, 09:35:32 PMNo. Same problem with last two updates including DynSqlite_workspace_V00.73.10.
Robert the version V00.73.11 works?
Download the workspace here.

TimoVJL

Quote from: MrBcx on November 10, 2026, 10:32:03 PMI don't do much with databases anymore ( retired 12 years ago ) but when I was doing DB work,
most of it involved MS Access and Sql Server.
Same here, retired few years ago, and had to at worklife to suffer of MS Sql Server, Oracle, Progress, and with a their client drivers.
MS SQL Server was an easy part. For Oracle have to make a special installer for minimal client database drivers.
May the source be with you

John Z

OK same here VAX/VMS DBMS, Ingres, Oracles, MS SQL, Access, ISAM DB (anyway I'm still no expert)

I used 'DB Browser for SQLite Version 3.13.1' to create the DB. 
https://sqlitebrowser.org/

I modified the DB per the request (as I understood it) using the the same tool, and attached it here for testing in the DynSQLite program.  The changes do not break my Hint_SA code. The DB is very small if you .7z it, or use .zip

However - Why does a database need to be changed to use a specific editor?  There is nothing inherently wrong with the database, yes changing HeaderC and LibraryC to numeric is not unreasonable but as is should not be breaking an editor.  Not that uncommon to have multiple primary keys either imo, even though I had not implemented using both.

I have not download DynSQLite lib and program since the first posting, waiting for the dust to settle a bit. Hadn't tried to build it yet either....

John Z

Note: If testing in Hint_SA rename the db to the original win32_functions.db3 (hard coded in the program)

Michele

#18
Quote from: John Z on November 11, 2026, 01:14:42 PMI modified the DB per the request (as I understood it) using the the same tool, and attached it here for testing in the DynSQLite program.  The changes do not break my Hint_SA code. The DB is very small if you .7z it, or use .zip

However - Why does a database need to be changed to use a specific editor?  There is nothing inherently wrong with the database, yes changing HeaderC and LibraryC to numeric is not unreasonable but as is should not be breaking an editor.  Not that uncommon to have multiple primary keys either imo, even though I had not implemented using both.

I have not download DynSQLite lib and program since the first posting, waiting for the dust to settle a bit. Hadn't tried to build it yet either....

John Z

Note: If testing in Hint_SA rename the db to the original win32_functions.db3 (hard coded in the program)

Hello John Z, your database structure doesn't break the DynSQLite editor, you can use it on your original database without any problem.
The library got a feature that analyzes the table's foreign key and shows a more friendly visualization in the editor for such fields.
In your database you join 2 tables, on headers and libraries, without a foreign key declaration (relaxed schema), if you declare the 2 foreign keys the editor automatically shows the available FK values using the most human friendly text field in the referenced table.
So for quick fixes, or to add more entries, you can easily select the header or library using the name instead of the numeric key, and take advantage of the filter available on top of the selection combo to locate faster the header/library you want. DynSQLite will take care to insert the correct key.
Using an integer for key reference speeds up database work removing eventual conversions.
The modification to the data base could have been done directly with DynSQLite using tools->modify_table using the dialog editor showed in my former posts.
It was a suggestion in hope that the feature I tried to give to my library could make things easier, not a request.  :) 

John Z

Hi Michele,

Ah - ok I guess I read more into this comment than was intended:

"if the modification of your table 'Functions' as below still works for you, you can edit it easily using SQLiteStudio on DynSQLite."

as meaning it couldn't edit without changing the fields, and removing the dual primary keys.

Apologies,
John Z

TimoVJL

#20
We should be thankful for Frankie for a that gdiplusflat.h header file.
MS header set is just a nightmare with several headerfiles's to filter from C++ junk.
May the source be with you

Robert

Quote from: Michele on November 11, 2026, 09:32:14 AM
Quote from: Robert on November 10, 2026, 09:35:32 PMNo. Same problem with last two updates including DynSqlite_workspace_V00.73.10.
Robert the version V00.73.11 works?
Download the workspace here.

Hi Michele:

There was some improvment but no the  V00.73.11 project still has compilation problems and does not work.

- - - - - - - - - - MemLeakCheck.lib
Building mem_dbg.obj.
Building MemLeakCheck.lib.
- - - - - - - - - - ReflectControl.lib
Building reflect.obj.
Building ReflectControl.lib.
- - - - - - - - - - DynSqlite_dll.dll
Building AboutDlg.obj.
Building AlterTable.obj.
Building Apis.obj.
Building autocomplete.obj.
Building AutoTable.obj.
Building Browser.obj.
Building collations.obj.
Building context.obj.
Building DynSQLiteLogo.obj.
Building export.obj.
Building FKSplitPicker.obj.
C:\Users\irwis\Downloads\DynSqlite_workspace_V00.73.11\include\FKSplitPicker.h(25): fatal error #1035: Can't find #include file <FkVirtualGrid.h>.
*** Error code: 1 ***
Done.

Did you fix TimoVJL's reported Errors ?
Please see
https://forum.pellesc.de/index.php?topic=11857.msg42770#msg42770

Michele

Quote from: Robert on November 11, 2026, 06:45:04 PMHi Michele:

There was some improvment but no the  V00.73.11 project still has compilation problems and does not work.

- - - - - - - - - - MemLeakCheck.lib
Building mem_dbg.obj.
Building MemLeakCheck.lib.
- - - - - - - - - - ReflectControl.lib
Building reflect.obj.
Building ReflectControl.lib.
- - - - - - - - - - DynSqlite_dll.dll
Building AboutDlg.obj.
Building AlterTable.obj.
Building Apis.obj.
Building autocomplete.obj.
Building AutoTable.obj.
Building Browser.obj.
Building collations.obj.
Building context.obj.
Building DynSQLiteLogo.obj.
Building export.obj.
Building FKSplitPicker.obj.
C:\Users\irwis\Downloads\DynSqlite_workspace_V00.73.11\include\FKSplitPicker.h(25): fatal error #1035: Can't find #include file <FkVirtualGrid.h>.
*** Error code: 1 ***
Done.

Did you fix TimoVJL's reported Errors ?
Please see
https://forum.pellesc.de/index.php?topic=11857.msg42770#msg42770
I'm very sorry Robert,
yes I fixed the errors reported by TimoVJL in version V00.73.11, but there were still some x@x!x^! includes with angle brackets that prevented the inclusion of headers in the workspace zip: #include file <FkVirtualGrid.h>.

I rechecked the whole project and verified that all files are in the distribution V00.73.12.
Please download the workspace here and let me know if it finally compiles.
I hope there will be no more problems  :(

Michele

Quote from: John Z on November 11, 2026, 02:49:42 PMHi Michele,

Ah - ok I guess I read more into this comment than was intended:

"if the modification of your table 'Functions' as below still works for you, you can edit it easily using SQLiteStudio on DynSQLite."

as meaning it couldn't edit without changing the fields, and removing the dual primary keys.

Apologies,
John Z
Sorry John Z, but I wrote it yesterday very late, and, as I see now, my english was already sleeping...  ;D

Robert

Quote from: Michele on November 11, 2026, 07:41:23 PM
Quote from: Robert on November 11, 2026, 06:45:04 PMHi Michele:

There was some improvment but no the  V00.73.11 project still has compilation problems and does not work.

- - - - - - - - - - MemLeakCheck.lib
Building mem_dbg.obj.
Building MemLeakCheck.lib.
- - - - - - - - - - ReflectControl.lib
Building reflect.obj.
Building ReflectControl.lib.
- - - - - - - - - - DynSqlite_dll.dll
Building AboutDlg.obj.
Building AlterTable.obj.
Building Apis.obj.
Building autocomplete.obj.
Building AutoTable.obj.
Building Browser.obj.
Building collations.obj.
Building context.obj.
Building DynSQLiteLogo.obj.
Building export.obj.
Building FKSplitPicker.obj.
C:\Users\irwis\Downloads\DynSqlite_workspace_V00.73.11\include\FKSplitPicker.h(25): fatal error #1035: Can't find #include file <FkVirtualGrid.h>.
*** Error code: 1 ***
Done.

Did you fix TimoVJL's reported Errors ?
Please see
https://forum.pellesc.de/index.php?topic=11857.msg42770#msg42770
I'm very sorry Robert,
yes I fixed the errors reported by TimoVJL in version V00.73.11, but there were still some x@x!x^! includes with angle brackets that prevented the inclusion of headers in the workspace zip: #include file <FkVirtualGrid.h>.

I rechecked the whole project and verified that all files are in the distribution V00.73.12.
Please download the workspace here and let me know if it finally compiles.
I hope there will be no more problems  :(

Thank you Michele. You've got a winner ! V00.73.12. compiles as expected.

- - - - - - - - - - MemLeakCheck.lib
Building mem_dbg.obj.
Building MemLeakCheck.lib.
- - - - - - - - - - ReflectControl.lib
Building reflect.obj.
Building ReflectControl.lib.
- - - - - - - - - - DynSqlite_dll.dll
Building AboutDlg.obj.
Building AlterTable.obj.
Building Apis.obj.
Building autocomplete.obj.
Building AutoTable.obj.
Building Browser.obj.
Building collations.obj.
Building context.obj.
Building DynSQLiteLogo.obj.
Building export.obj.
Building FKSplitPicker.obj.
Building FKVirtualGrid.obj.
Building HexDump.obj.
Building images.obj.
Building import.obj.
Building MsqlDebug.obj.
Building QueryEditor.obj.
Building rec_edt.obj.
Building RegWnd.obj.
Building schema.obj.
Building sql.obj.
Building sql_editor.obj.
Building SqlSyntax.obj.
Building tables.obj.
Building triggers.obj.
Building utilities.obj.
Building validation.obj.
Building views.obj.
Building workbench.obj.
Building DynSqlite_dll.dll.
Creating object: C:\Users\irwis\Downloads\DynSqlite_workspace_V00.73.12\exe\DynSqlite_dll.exp
Creating library: C:\Users\irwis\Downloads\DynSqlite_workspace_V00.73.12\exe\DynSqlite_dll.lib
- - - - - - - - - - sqlitestudio_dll.exe
Building About.obj.
Building background.obj.
Building dumps.obj.
Building main.obj.
Building resources.res.
Building TablesBrowser.obj.
Building sqlitestudio_dll.exe.
- - - - - - - - - - DynSqlite.lib
Building AboutDlg.obj.
Building AlterTable.obj.
Building Apis.obj.
Building autocomplete.obj.
Building AutoTable.obj.
Building Browser.obj.
Building collations.obj.
Building context.obj.
Building DynSQLiteLogo.obj.
Building export.obj.
Building FKSplitPicker.obj.
Building FKVirtualGrid.obj.
Building HexDump.obj.
Building images.obj.
Building import.obj.
Building MsqlDebug.obj.
Building QueryEditor.obj.
Building rec_edt.obj.
Building RegWnd.obj.
Building schema.obj.
Building sql.obj.
Building sql_editor.obj.
Building SqlSyntax.obj.
Building tables.obj.
Building triggers.obj.
Building utilities.obj.
Building validation.obj.
Building views.obj.
Building workbench.obj.
Building DynSqlite.lib.
- - - - - - - - - - sqlitestudio.exe
Building About.obj.
Building background.obj.
Building dumps.obj.
Building main.obj.
Building resources.res.
Building TablesBrowser.obj.
Building sqlitestudio.exe.
Done.


Michele

Quote from: Robert on November 11, 2026, 07:53:34 PMThank you Michele. You've got a winner ! V00.73.12. compiles as expected.
:)
Those angle brackets were a real PITA!
Happy to know that it worked.
Let me know your comments.  8)

TimoVJL

Next hint is to use WIN32_LEAN_AND_MEAN to every project, that use windows.h
May the source be with you

John Z

Quote from: TimoVJL on November 11, 2026, 06:09:08 PMWe should be thankful for Frankie for a that gdiplusflat.h header file.
MS header set is just a nightmare with several headerfiles's to filter from C++ junk.


I agree even though I did not use his .h file for the GDI+Flat functions.  I mention his fGdiPlusFlat.h creation and provide the GitHub link too.  It is on the page API Searching under Hint_SA in the hint_SA.chm file. :)

John Z

John Z

Hi Michele,

Well - wow, what a huge project!  It built ok using the latest download from SourceForge, and runs. I haven't tried much else in it yet, other than a quick view of a db.

Just FYI in Browser.c there are still two private .h files using <> however the file does compile: #include <rec_edt.h> and #include <MsqlImg.h>

Great work! 👍
John Z

Michele

Quote from: John Z on <strong>Today</strong> at 11:07:18 AMHi Michele,

Well - wow, what a huge project!  It built ok using the latest download from SourceForge, and runs. I haven't tried much else in it yet, other than a quick view of a db.

Just FYI in Browser.c there are still two private .h files using <> however the file does compile: #include <rec_edt.h> and #include <MsqlImg.h>

Great work! 👍
John Z
Thanks John  :)
I'm happy that you appreciated it.
And thanks also for the advice. I fixed them.  :(