一个客户端程序,有自己的数据库文件,当程序需要升级并且更改数据结构时,SQL语句应该放在哪里执行?

图片说明
如题,开发了一个windows客户端的程序,使用了SQLITE作为数据库,setting.db就是数据库文件。由于客户端升级有时需要更改数据结构,比如加个字段什么的,这个时候就有个问题了,如果要让升级之后原来的数据库文件还能用,需要执行一次更改数据结构的SQL,但是这个更改数据结构的SQL应该放在哪里执行?才能确保它能被执行并且只被执行一次?

不知道描述清了没,就是类似发一条SQL让客户端执行的效果

一般是先对setting.db做一下备份,程序升级后,先对setting.db的数据导入到新的数据库格式的setting2.db中去,等数据导入成功以后,程序然后使用新的db文件。