How do I VACUUM a SQL database
Posted: Mon Jan 02, 2017 1:00 am
Hi,
I am playing with a very simple family tree program and wanted to clean up the database after all the updating.
I thought I could just use the SQL Vacuum command, but it does not work?
Here is the cut down code I am using, it is all that is needed to access the Database.
If anyone can suggest the correct syntax , that would move me on to the next challenge.
Thanks and Happy New Year to all.
I am playing with a very simple family tree program and wanted to clean up the database after all the updating.
I thought I could just use the SQL Vacuum command, but it does not work?
Here is the cut down code I am using, it is all that is needed to access the Database.
Code: Select all
function setup() ; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
db = assert_userdata( sqlite3.open(Dir$.."FamilyData.sql") )
endfunction
function closedown() ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
assert_number( db:close() )
endfunction
function assert_number(f) ; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if gettype(f) <> #number then debugprint("Assertion failed")
return(f)
endfunction
function assert_userdata(f) ; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if gettype(f) <> #userdata then debugprint("Assertion failed")
return(f)
endfunction
function vacuum() ; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
assert_number(db:exec("VACUUM"))
endfunction
setup()
vacuum()
closedown()
Thanks and Happy New Year to all.