Welcome Guest ( Log In | Register )

Outline · [ Standard ] · Linear+

SQL My first database program in Assembly language, Based on SQLite3

views
     
TSMatQuasar
post Oct 17 2025, 04:42 PM, updated 2 months ago

Casual
***
Validating
329 posts

Joined: Jun 2023
My latest hobby project is a Win32 database program written in FASM, based on SQLite3.dll.

It allows CRUD, but I have issue with Update and Remove in indexing if you start remove items in the middle of the list, it won't update the database although it appears correctly in GUI window.

user posted image

SQLite3.dll is decades old, I got the example and file from another fellow Malaysian "yeohhs", who had uploaded several FASM tutorial examples.

The code to fetch SELECT query in my program is different than what I did last time in Visual Basic 6, the result set returned by 'sqlite3_get_table' function is in memory pointer format, and the first row is always column header. If I have two columns, then each cell is 4-byte long (memory address), which mean each row is 8-byte long.

Nonetheless, it was fun to program a SQL database program in Assembly language. If you are in Developer Kaki group, you may already see I have showcased this in last July.

If you want to run, here's how:
1) Download 'dbform.txt' and 'sqlite3.zip'
2) Unzip sqlite3.zip and you'll get one file - sqlite3.dll
3) Rename dbform.txt to dbform.asm
4) Download Flat Assembler for Windows
5) Run FASMW.EXE and open dbform.asm
6) Click Compile (or Run)
7) Please make sure sqlite3.dll and dbform.exe are in the same directory
8) After you run, you'll notice dbform1.dat file-based database is created

This post has been edited by MatQuasar: Oct 18 2025, 12:40 AM


Attached File(s)
Attached File  dbform.txt ( 7.53k ) Number of downloads: 6
Attached File  sqlite3.zip ( 236.78k ) Number of downloads: 1

 

Change to:
| Lo-Fi Version
0.0152sec    0.50    6 queries    GZIP Disabled
Time is now: 29th November 2025 - 03:45 AM