如何在 ms access 中更改表字段的数据类型,而无需创建新表单来更新表?

Posted

技术标签:

【中文标题】如何在 ms access 中更改表字段的数据类型,而无需创建新表单来更新表?【英文标题】:How do you change a data type of a table field in ms access without having to create a new form to update the table? 【发布时间】:2017-05-07 16:00:28 【问题描述】:

我有一个 customerID 作为主键(自动编号),当我将 customerID 放在另一个表上时,我将其保留为短文本,而不是明显的数字数据类型,我只有在创建表单和查询后才意识到。有没有一种方法可以更改数据类型,并且仍然能够使用我创建的表单来更新我的表,而必须删除关系、修复和重做我的所有表单?

当我更改数据类型时,会出现此消息“一些数据将丢失。一个或多个字段的字段大小属性的设置已更改为更短的大小。如果数据丢失,则可能违反验证规则作为结果”

【问题讨论】:

警告说“可能会丢失”。如果字段中没有数据,则不会丢失任何数据,如果数据全是数字,则不会丢失任何数据。不幸的是,删除和重置关系是不可避免的。可能必须编辑表单和控件属性,但不必从头开始重新构建表单。设置了什么关系? ID 数据已全部填充,但在外国字段中带有短文本,它不会正确地从表单更新表格。我有很多表格和一个指向它们的菜单,所以看起来太费劲了。 如果最终结果是改进,则无需太多努力。这可能既乏味又耗时,但要做好,而且只做一次。 【参考方案1】:

在尝试转换之前,请始终创建一个新列并将要转换的数据复制到其中,jic。新列名:customerID_bak。将所有 customerID 数据复制到其中并尝试转换。如果出现问题,您仍然拥有原始数据。我认为转换后您的表单实际上可能没有问题。

【讨论】:

以上是关于如何在 ms access 中更改表字段的数据类型,而无需创建新表单来更新表?的主要内容,如果未能解决你的问题,请参考以下文章

无法更改 MS Access 2007 上的数据类型

oracle中如何修改日期类型的字段值

oracle中如何修改日期类型的字段值

MS Access - 更改表单中的值后立即写入表

请问C#.net如何更改dataTable的数据类型?

oracle中如何更改一个表的一个字段属性(名称,类型)