数据库文件怎么才能在程序中被使用

数据库文件怎么才能在程序中被使用,第1张

数据

文件数据库又叫嵌入式数据库,将整个数据库的内容保存在单个索引文件中,以便于数据库的发布。

文件数据库的3个重要特征(相对于传统数据库)

1. 数据 *** 作接口

SQL92标准,不管是传统数据库,还是文件数据库,都必须支持SQL92标准。

2. 数据保存格式

传统数据库(DB2, Oracle, SQL server等)数据保存的方式各异。

文件数据库将数据保存在单一文件中。

3. API支持

传统数据库都支持ODBC和JDBC。

某些文件数据库不支持ODBC和JDBC(sqlite都不支持,Berkeley DB有ODBC和JDBC支持,Firdbird有第三方的ODBC驱动)。

文件数据库与传统数据库的比较

优势: 由于数据保存在单一文件中,数据库的部署和发布都比较简单,适用于内嵌在应用程序中。

数据量不是太大时,速度比传统数据库要快。

缺点: 由于数据保存在单一文件中,数据库打开时,该文件会被整个load到内存,应此数据库不能过大(100M以内,个人测试)。

各种文件数据库的比较

Sqlite: 老牌的文件数据库,完全免费 ( public domain ),使用方便,无须任何配置,下载源代码编译成库或者直接编译到应用程序都可以(250K,C代码)。支持事务机制和blob数据类型。

Berkerley DB: 更老牌的文件数据库,最稳定的数据库,完全可以取代大部分传统client/server数据库的应用场合;支持xml(代价是30M硬盘空间)。缺点是配置和使用比较复杂,不太适合小项目。

Firbird:与sqlite比较类似,有C#支持。某些发布版本不能build, 很久没有关注了。

Access:一般不考虑

Sqlite简单介绍

个人比较喜欢sqlite, 使用最方便,唯一的准备工作是下载250K的源;而且作者很热心,有问必答。

以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容。2个重要结构体和5个主要函数:

sqlite3 pdb, 数据库句柄,跟文件句柄FILE很类似

sqlite3_stmt stmt, 这个相当于ODBC的Command对象,用于保存编译好的SQL语句

sqlite3_open(), 打开数据库

sqlite3_exec(), 执行非查询的sql语句

sqlite3_prepare(), 准备sql语句,执行select语句或者要使用parameter bind时,用这个函数(封装了sqlite3_exec)

Sqlite3_step(), 在调用sqlite3_prepare后,使用这个函数在记录集中移动。

Sqlite3_close(), 关闭数据库文件

还有一系列的函数,用于从记录集字段中获取数据,如

sqlite3_column_text(), 取text类型的数据。

sqlite3_column_blob(),取blob类型的数据

sqlite3_column_int(), 取int类型的数据

黄莺鸣翠柳 紫燕剪春风 莺歌燕舞

右键点属性,进入“权限”选项卡

看一下你当前用户或所在组是否有权限修改这个文件

重装系统后原先储存的权限数据还在,但用户帐户变了,可能是这个原因

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

先简单说下步骤:

将格式为db的数据库文件放到android项目assets目录中;

在程序必要的时候,将其“拷贝”(文件读取)到Android 程序默认的数据库存储目录中,一般路径为“/data/data/项目包名/databases/“;

自定义SQLiteOpenHelper类,创建一个名字跟步骤1中db名称一样的数据库;

按照平常逻辑,增删改查数据库。

以上就是关于数据库文件怎么才能在程序中被使用全部的内容,包括:数据库文件怎么才能在程序中被使用、access 数据库文件如何使用啊、android怎么使用外部的数据库文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9441585.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存