使用 Access 2003 将 Access 2000 数据库转换为 Access 97

Posted

技术标签:

【中文标题】使用 Access 2003 将 Access 2000 数据库转换为 Access 97【英文标题】:Converting Access 2000 database to Access 97 using Access 2003 【发布时间】:2013-04-20 20:38:37 【问题描述】:

我有一个 Access 2000 格式的访问数据库(来自一个开源项目)。 我查看过的所有文本字段都将ALLOWZEROLENGTH 设置为TRUE,将DEFAULT 设置为""(空字符串)。

在转换为 Access 97(使用 Access 2003)时,ALLOWZEROLENGTH 设置为 FALSE,但 DEFAULT 保持为空字符串。

奇怪的是(在我看来)我仍然可以在不为许多文本字段指定值的情况下将记录添加到表中而不会出现问题。

但是,如果我通过添加字段来修改表格设计,之后如果我尝试添加记录 触发了很多“不能包含零长度字符串”的错误。

这就像文本字段上的 DEFAULT 值属性在此之前处于休眠状态。

这是 Access 2003 中转换器的问题吗?

我也尝试先转换为 2003,然后再转换回 97,但结果是一样的

对我来说最好的操作是浏览 97 数据库并将ALLOWZEROLENGTH 设置为TRUE 还是将DEFAULT 设置为Null

【问题讨论】:

【参考方案1】:

“最佳做法”是不使用 Access 97 数据库格式。微软不再积极支持 Office 97;九 (9) 年以来一直如此! (参考:here)

但是,如果您出于某种原因绝对必须使用 Access 97 文件格式,那么可以,您可能应该只检查表定义并根据需要调整字段属性。

【讨论】:

你是对的。我已经使用内置的 Access 2000 数据库而不是转换为 97,以防万一转换为 97 有其他特殊性。但让我感兴趣的是转换后的 Access 97 数据库的特殊行为方式

以上是关于使用 Access 2003 将 Access 2000 数据库转换为 Access 97的主要内容,如果未能解决你的问题,请参考以下文章

将 Access 2003 更新到 2007,潜在问题?

access 2003 runtime 和 access 2003 LI 的区别

如何将字段添加到 Access 2003 查询以显示基于另一个字段的结果?

如何将 Access 2003 数据库链接到 MySQL 数据库

如何在 access 2003 中查询列数据类型?

从 .Net 访问 Microsoft Access 2003 和 2007 BLOB 字段