如何访问存储在文件中的用户记录(无数据库)

时间:2011-07-29 20:27:11

标签: c++ ansi

如何使用ansi c ++,根据文件中的主键保存和访问用户的记录。没有使用数据库。

3 个答案:

答案 0 :(得分:1)

最简单的场景是(ab)使用文件系统作为数据库。主键是文件的名称,文件的内容是记录本身。通过名称/密钥打开文件是查找。

但是,您可能希望更详细地说明您的要求。喜欢什么类型的记录和密钥,它应该存储多少记录,更新和查询发生的频率。

答案 1 :(得分:0)

无论您是否将其称为数据库,如果您随机访问文件中的记录而不是数据库。

无论如何,定义文件的最大记录长度。称之为MAX_RECL

打开以进行读/写 要读取,请寻求rec * MAX_RECL并读取MAX_RECL。 要写入,请寻求rec * MAX_RECL并写入MAX_RECL。 关闭,寻求结束和关闭。

要使用密钥,您需要一个将密钥映射到记录的单独索引,除非您希望每次都搜索整个文件。

答案 2 :(得分:0)

在滚动自己的数据库之前,请检查SQLite或Berkeley DB之类的嵌入式数据库。

您可以使用固定记录大小,或者如果它是变量,则可以使用单独的索引文件作为条目的开头和长度。