我使用的Access数据库仅用作后端。
我使用了一些备忘录字段。

我了解到备注字段会导致数据库损坏,因为它们存储在单独的数据页中;记录只保存指向存储实际数据的数据页的指针。

大多数时候我只需要100到1000个字符左右,所以我有一个想法...
我的“辉煌” (或不)想法是将备忘录分成4或5个文本字段(它们每个可以容纳255个字符)。

之前有人这么做过吗?
任何已知问题?
这种方法是否更不容易出现数据损坏?

谢谢,结果 JAG

P.S。,点击 我以前遇到过腐败问题。
2.我知道最好的办法是迁移到另一个后端,但这是不可能的。

有帮助吗?

解决方案

更好的解决方法是从附加记录中解开备忘录数据页面。这样做的方法是将备注字段放在单独的表中。您可以使用1:1表格(在边桌中有多个备忘录),或者更好,作为带有备忘录类型字段的1:N表格。后一种方法是完全避免备忘录指针问题的唯一方法,但是,在前一种解决方案中,备忘录表中任何备忘录指针的损坏都会导致丢失所有备忘录指针。

此外,您应该考虑为什么您的数据库正在破坏备忘录指针。除了上面的建议,您可能应该考虑编辑未绑定的备忘录,但是因为您似乎没有使用可能不是问题的Jet MDB的Access前端。我不时地看到备忘录腐败,但不是经常。如果您经常看到它,它会告诉我您的应用程序设计不当或您的操作环境明显不合格。

其他提示

听起来你想把一个现有的备忘录字段和切入,然后再将它放入数据库,然后在你需要显示它时将它粘合在一起。

如果你尝试的话,我想你会陷入痛苦的世界。如果那是你唯一的选择,我会更加努力地改变后端:)

我会建立像你建议做的事情,以DWF的答案为基础。 使用文本字段创建1:N表(我称之为UserNotes)(与您似乎遇到麻烦的备忘录相比)。

然后创建一个以UserNotes作为记录源的子表单,并用UserNotes子表单替换备注字段。这允许用户决定在255个字符文本字段的上下文中行/段落的位置。 (对于转换,你仍然需要删除备忘录,但这只是一次性操作)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top