在 Access 中保存表时出现 "定义过多的字段" 错误

2020/5/22

适用于:

Access for Office 365, Access 2019, Access 2016, Access 2013, Access 2010, Access 2007

本文内容

备注

Office 365 ProPlus 正在重命名为 适用于企业的 Microsoft 365 应用。 有关此更改的详细信息, 请阅读此博客文章。

中等:需要基本的宏、编码和互操作性技能。

本文仅适用于 Microsoft Access 数据库(.mdb)。

症状

当您在添加新字段或更改现有字段的属性后保存表时,您会收到以下错误消息:

定义了过多字段。

此邮件后接以下内容:

保存期间遇到错误。数据类型未更改。

即使表中定义了255或更少的字段,也会收到这些邮件。

注释如果您在基于包含过多字段的表的报表中添加或修改字段,也会收到此消息。

原因

Microsoft Access 用于跟踪表中的字段数的内部列计数已达到255,即使表中的字段数少于255。 出现这种情况的原因是,Access 在删除字段时不会更改内部列数。 Access 还会为您修改其属性的每个字段创建一个新字段(将内部列计数增加1)。

解决方案

若要释放已删除字段或您修改其属性的字段的内部列计数,请执行下列操作之一:

压缩数据库。 若要执行此操作,请指向 "工具" 菜单上的 "数据库实用工具",然后单击 "压缩和修复数据库"。

创建表的新副本。 为此,请执行以下步骤:

请记下与表的任何关系。

选择该表。

在“文件”菜单上单击“另存为”。

在 "将表名称保存为" 框中,键入一个新名称,然后单击 "确定"。

选择您在步骤2中选择的相同表,然后按 DELETE。

将您在步骤3中保存的表重命名为原始表名称。

重新建立与新表的任何关系。

更多信息

在 Access 中,可以在表中定义最多255个字段。 如果创建了255个字段,然后删除了10个,则 Access 不会释放来自内部列计数的字段。 此外,对于要修改其属性的每个字段,Access 都会创建一个新字段,而不会从内部列计数中释放原始字段。

再现行为的步骤

备注

本文中的示例代码使用的是 Microsoft 数据访问对象。 若要使此代码正常运行,必须引用 Microsoft DAO 3.6 对象库。 若要执行此操作,请在 Visual Basic 编辑器中的 "工具" 菜单上单击 "引用",并确保选中了 "Microsoft DAO 3.6 对象库" 复选框。

创建下面的 Visual Basic for Applications 代码,以创建包含255字段的新表:

' ****************************************************************

' Declarations section of the module

' ****************************************************************

Option Compare Database

Option Explicit

' ****************************************************************

' The Fill_Table() function creates a table in the current database

' named Field Test with 255 fields, each of which has a Text data

' type and a size of one character.

' ****************************************************************

Function Fill_Table()

Dim mydb As DAO.Database

Dim tbl As DAO.TableDef

Dim fld As DAO.Field

Dim i As Integer

Set mydb = CurrentDb()

Set tbl = mydb.CreateTableDef("Field Test")

For i = 0 To 254

Set fld = tbl.CreateField("Field" & CStr(i + 1))

fld.Type = dbText

fld.Size = 1

tbl.Fields.Append fld

Next i

mydb.TableDefs.Append tbl

End Function

在 "立即" 窗口中键入以下行,以运行函数并创建表:

Fill_Table

在 "设计" 视图中查看字段测试表,然后删除最后一个字段,以便在表中仅定义了254个字段。

再次添加字段,然后尝试保存该表。 请注意,您会收到以下错误消息:

Too many fields defined.

Errors were encountered during the save operation. Fields were not added. Properties were not updated.

引用

有关数据库规范的详细信息,请单击 "帮助" 菜单上的 "Microsoft Access 帮助",在 "Office 助手" 或 "应答向导" 中键入访问规范,然后单击 "搜索" 以查看返回的主题。

access2007 定义了过多字段_定义了过多的字段错误 | Microsoft Docs相关推荐

  1. mysql 备用字段_数据库设计之备用字段

    备用字段,也称 预留字段 . 相关描述: 在数据表中,不仅设计了当前所需要的字段,而且还在其中留出几个字段作为备用. 举例说明,我设计了一个人员表(Person),其中已经添加了各种必要的字段,包括姓 ...

  2. fastjson 不转某些字段_全面总结Fastjson过滤字段、排除字段的5种方法(含示例)...

    1.通过注解指定不需要序列化的字段 在不需要序列化的字段,添加@JSONField(serialize = false)注解可进行排除. public class DontSerializeAnnot ...

  3. mysql 冗余字段_如何合理使用数据库冗余字段的方法

    privot多对多关系的中间表.PT5框架会自动把privot带上. 我们需要隐藏,因为我们不需要privot,而且pritvot也不在我们模型本身,他是中间数据 另外冗余字段,我们有一个表是记录图片 ...

  4. vuejs 数组定义字段_一个漂亮的文本字段,用于格式化VueJS制作的电话号码

    vuejs 数组定义字段 电话号码输入 (vue-phone-number-input) A beautiful text field to format phone numbers made wit ...

  5. mysql查询今日没有时间字段_关于日期及时间字段的查询

    前言: 在项目开发中,一些业务表字段经常使用日期和时间类型,而且后续还会牵涉到这类字段的查询.关于日期及时间的查询等各类需求也很多,本篇文章简单讲讲日期及时间字段的规范化查询方法. 1.日期和时间类型 ...

  6. php 一个电子商城的产品分类字段_你会对这个字段做索引嘛,order by多个字段对索引的影响...

    初步看改语句,非常简单,根据products_viewed(产品被查看次数)倒序排序,再根据products_name(产品名字)排序!在products_vie 某前台sql语句,简化后如下 SEL ...

  7. mysql2005备份_创建完整数据库备份 - SQL Server | Microsoft Docs

    完整数据库备份Create a Full Database Backup 09/12/2019 本文内容 适用于:Applies to: SQL ServerSQL Server(所有支持的版本)SQ ...

  8. access里的多步oledb错误_(ADO) 的 ConnectionString 属性 - SQL Server | Microsoft Docs

    ConnectionString 属性 (ADO)ConnectionString Property (ADO) 01/19/2017 本文内容 指示用于建立与数据源的连接的信息.Indicates ...

  9. sql server java类型_使用基本 JDBC 数据类型 - SQL Server | Microsoft Docs

    使用基本数据类型Using basic data types 01/29/2021 本文内容 Microsoft JDBC Driver for SQL ServerMicrosoft JDBC Dr ...

最新文章

  1. Java重写equals和hashCode方法
  2. WinForm加载外部类库项目的集成开发模式
  3. Jordan Lecture Note-9: Principal Components Analysis (PCA).
  4. windows脚本编制引擎_从零开始的场景编辑器(二):脚本系统
  5. ubuntu遇到的 the system is runing low-graphics mode 问题
  6. JavaScript常用验证代码(正则表达式)(转自cnblogs)
  7. Matlab 绘制箱线图
  8. C++模拟鼠标移动及单击实现代码
  9. 认识计算机拓扑结构图,认识计算机网络拓扑结构
  10. 【chromeEdge不兼容openModalDialog弹出模态窗口window.showModalDialog解决办法】
  11. 支付宝之小鸡拍球游戏(C++)
  12. wps excel 多数字文本格式转换为数字(不会以科学计数法显示)
  13. delta和gamma中性_套期保值中性技术操作之构建delta—gamma中性
  14. python dataset_数据管道Dataset
  15. LINUX shell 脚本
  16. Docker的上手(Ubuntu140.4 Mate)
  17. 动真格了!苹果下架超5万款游戏App, 辛好我有企业签
  18. win10自带计算器闪退的解决办法
  19. 程序员架构修炼之道:软件架构基本概念和思维
  20. ERP之工单应发料数

热门文章

  1. 《Adobe Photoshop大师班:高级合成的秘密》—第1章文件格式
  2. Python3.5 email发送邮件,包含txt、图片、HTML、附件
  3. 内容付费行业将如何发展
  4. jQuery模拟在线选座
  5. 果蝇优化算法优化Z-SCORE模型参数
  6. 用上 RNN,这个视频抠像工具效果绝了
  7. leetcode 学习之路
  8. 驶向伟大的IT之路--我的演说辞
  9. 超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等...
  10. 【国内火车运行路线计算与展示】