SQLite是一个轻量型的数据库,各方面由于Access,对于小型网站来说,非常适合!我今天决定将系统的数据库由Access转换为SQLite。 在网上搜索了一下,找到了DBManager这个工具,不得不说,这个软件确实好,很强大,在网上找注册码也找到半天,找不到一个!
只要将Access转换为SQLite,然后使用System.Data.SQLite.dll来访问数据库。我们用DbManager创建一个SQLite数据库。
如下图:
2.选择数据,并点击工具 - 数据管理 - 导入数据
3.按照向导,选择Access,mdb文件,并选择文件位置后将会列出Access数据库的所有表。选择所有表,并包括数据
4.点击确认开始导入数据,导入完成后,打开表发现跟原来的数据完全一致!
数据库导入的工作已经完成了,我们可以将这个SQLite数据库用到我们的项目中!
可惜的是,读取SQLite时候,给报一个错:
File opened that is not a database file
file is encrypted or is not a database
用SQLiteSpy打开SQLite数据库时候提示输入密码。
我就为这个问题,弄了一下午时间,网上说数据库损坏了,也有的说在连接字符串设置密码。
经过反复的思考之后,觉得问题应该出在SQLite的版本上,只能通过其他方式来将Access转为SQLite了。
还好,数据库都支持SQL,我只有设法将数据导出为SQL文件,然后通过SQLiteSpy创建一个支持ASP.Net调用的文件。在这个文件中执行脚本!
结果终于搞定!
DBManager也支持SQLite数据导出为SQL文件:选择数据库->Dump,按照向导出脚本
脚本导出之后,我们就可以使用SQLiteSpy创建新的数据库了:File->New DataBase
创建完成之后,执行刚才保存的SQL脚本。
现在,可以将这个数据库文件放到我们的项目中供System.Data.SQLite.dll 调用了!