Access 2003完整教程:导入和链接的疑难解答

在Microsoft Access 数据库中,对大多数的出错记录,Microsoft Access 均向名为“导入错误”的表中添加一行。若要查看出现的错误列表,请从“数据库”窗口打开“导入错误”表。

导入电子表格或文本文件时出现错误消息。

下面是导致出错的几种常见原因:

导入文本文件时耗时过长。

如果导入文本文件时出乎意料地慢,则可能是因为出现了很多的错误。若要取消导入操作,请按 Ctrl+Break。若要查看出现的错误列表,请在“数据库”窗口打开“导入错误”表。

追加电子表格或文本文件时出现错误信息。

追加的记录必须与已有的表结构兼容,即每个字段的数据类型必须与目标表中的相应字段相同,且字段必须顺序相同(除非将文件的第一行用作字段名,这种情况下字段名必须匹配)。

如果怀疑问题在于追加的数据,请编辑电子表格或文本文件,然后重新导入。否则,可能需要改变目标表本身。可以重新排序字段,更改数据类型,运行一个更新查询(例如,重新对数据设置格式或重新计算数据),或者运行一个生成表查询(例如,将一个字段分成两个字段,或者将几个字段合并为一个字段)。

下面是导致出错的几种常见原因:

无法打开或更新链接的 Microsoft Visual FoxPro 或 dBASE 表。

无法打开或更新 Paradox 链接表。

无法打开或更新 SQL 链接表。

得到键值冲突的消息。

以下情形将会出现键值冲突的问题:

如果运行了以上查询,将不会修改造成键值冲突的记录。

如果要以违反参照完整性的方法修改记录,可以中断相互影响的表的关系或关闭参照完整性,然后一次一个地修改受影响的表。但是,两个表中的结果数据可能会冲突。

我导入过文件,现在有一个“导入错误”表。

在试图将文本文件或电子表格导入到 Microsoft Access 数据库时,“导入错误”表包含 Microsoft Access 所遇到的多数错误消息的说明。该表包括字段名和行号,指明哪个数据导致错误。

如果 Microsoft Access 报告错误,请打开“导入错误”表并确定 Microsoft Access 不能导入所有记录的原因。下表列举了可能的导入错误,并说明了错误的原因:

错误说明
字段截断文件中的值比该字段的“字段大小”属性设置要大。
类型转换失败文本文件或电子表格中的值与该字段的数据类型不同。
键值冲突该记录的主键是一重复值 — 它在表中已经存在。
有效性规则失败某值破坏了用“有效性规则”属性对该字段或该表的规则设置。
必填字段中的 Null 值因为字段的“必填字段”属性被设为“是”,该字段的值不允许为Null。
在“自动编号”字段中的 Null 值所导入的数据包含 Null 值,用户试图将其追加到“自动编号”字段中。
不能正确识别的记录文本值包含文本分隔符(通常为双引号)。当值中含有分隔字符时,该字符在文本文件中必须重复两次,例如:

10 - 3 1/2""磁盘/框

如果怀疑问题在于数据上,请编辑文本文件或电子表格。如果将记录追加到已有表,则可能需要更改表本身(例如,重新排序字段或更改数据类型)。解决问题后,再重新导入。

我正尝试从启用了安全机制的数据库中导入或链接数据。

如果要导入或链接的数据库有数据库密码,则在继续之前必须提供密码。链接这样数据库的表可能会产生意外的后果。

文件扩展名并没有在“文件类型”对话框中的文件名旁显示。

在 Windows 资源管理器中还没有选择“显示所有文件和文件夹”。有关选择选项的信息,请参阅 Windows“帮助”。

在已转换的数据库中打开表或窗体时,得到“ODBC – 无法连接到 datasourcename”消息。

如果将转换过的 Microsoft Access 1.x 或 2.0 版数据库中的表链接到使用 16 位驱动程序管理器和驱动程序的ODBC 数据源,将出现“ODBC – 连接到数据源名失败”的消息。Microsoft Access 2002 或更高版本只能打开使用 32 位版本的“ODBC 驱动程序管理器”(Odbc32.DLL) 和适当的 ODBC 驱动程序(例如,32 位版本的 Microsoft SQL Server ODBC 驱动程序 (Sqlsrv32.DLL))的链接 ODBC 数据源。

若要更正此错误,必须为每一个链接到原 Access 1.x 或 2.0 版数据库的 ODBC 数据源,新建一个同名的 32 位数据源名 (DSN)。

  1. 在 Microsoft Windows 控制面板中,双击“管理工具”,然后双击“数据源 (ODBC)”。
  2. 通过输入与原 DSN 相同的值创建新的 DSN。例如,对于 Microsoft SQL Server,至少需要定义“数据源名称”和“服务器”,但可能还需要定义附加的值,例如“数据库名称”。

如果不能确定 DSN 的原始名称,请在创建它的 Microsoft Access 版本中打开原始数据库,在“设计”视图打开链接表,然后显示“表属性”表。表的“说明”属性包含对 ODBC 连接字符串的定义。在连接字符串中,接在DSN=后面的参数即为 DSN 的名称。

上页:Access 2003完整教程:报表的疑难解答 下页:Access 2003完整教程:安全机制疑难解答 (MDB)

Access 2003完整教程:导入和链接的疑难解答

Access 2003完整教程:安全机制疑难解答 (MDB)Access 2003完整教程:Visual Basic 代码安全机制疑难解答 (MDB)
Access 2003完整教程:表达式疑难解答Access 2003完整教程:密码疑难解答 (MDB)
Access 2003完整教程:Access 项目疑难解答 (ADP)Access 2003完整教程:查询疑难解答 (ADP)
Access 2003完整教程:复制、转换和链接到 SQL Server 数据库时的疑难解答 (ADP)Access 2003完整教程:键、关系和索引疑难解答 (ADP)
Access 2003完整教程:表和列疑难解答 (ADP)Access 2003完整教程:“升迁向导”疑难解答
Access 2003完整教程:更新数据疑难解答 (ADP)Access 2003完整教程:Microsoft Office Access 2003 中的新增功能
Access 2003完整教程:自定义用“标签向导”创建的标签Access 2003完整教程:使用图表
Access 2003完整教程:使用存储过程Access 2003完整教程:使用触发器
Access 2003完整教程:使用用户定义的函数Access 2003完整教程:向输入法编辑器 (IME) 字典中添加字词
Access 2003完整教程:向查询添加列Access 2003完整教程:在自定义字典中添加或删除朝鲜文字
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号