sqlite embedded sql server for ldmud 3.3
this is a first working version
Needed Libraries
Known Issues
- guess there might be memory leaks
- sqlite return values are not checked properly
Progress
- 01-Jul-2003
- 03-Jul-2003
- Every Object can open its own db. (dbs are bound to objects)
- 14-Aug-2003
- DB's get closed when the bound object gets destroyed.
- fixed some memory leaks.. should be sort of usable now
- 24-Aug-2003
- sl_insert_id() returns the autoincrement value from the last insert
- __SQLITE__ define predefined in all objects
- 31-Aug-2003
- filenames of databases are checked by valid_write
- 28-Mar-2004
- The list holding the database connection lost a connection sometimes (list improved)
- fixed a small mem leak
- database connections opened by clones where not closed when the object got destructed
Planed Features
- optional asynchron queries using callbacks
How It Works
Included EFUNS
- sl_open(string filename);
- sl_exec(string sqlstatement);
- sl_insert_id();
- sl_close();
This example uses the testmaster you find in this directory.
// opens/creates the file /myfirst.db
> slopen myfirst.db
// create a table with 3 columns
> sl create table firsttable ("column 1","column 2","column 3")
data: 0
// ups.. i made an error:
> sl insert into firsttable (2,5,9)
*sl_exec: near "2": syntax error
// insert some data
> sl insert into firsttable values (2,5,9)
data: 0
> sl insert into firsttable values ("this","is","data")
data: 0
// get the data back
> sl select * from firsttable
data: ({ /* #1, size: 2 */
({ /* #2, size: 3 */
"2",
"5",
"9"
}),
({ /* #3, size: 3 */
"this",
"is",
"data"
})
})
Name Last modified Size Description
Parent Directory -
pkg_sqlite.diff 28-Mar-2004 17:05 11K
test_master.c 14-Aug-2003 23:02 8.7K
Apache/2.0.50 (Unix) mod_ssl/2.0.50 OpenSSL/0.9.6a DAV/2 PHP/4.3.7 SVN/1.0.5 Server at ff.mud.de Port 80