Microsoft Access对链接Oracle表的复选框列的支持

Microsoft Access对链接Oracle表的复选框列的支持,oracle,ms-access,checkbox,boolean,linked-tables,Oracle,Ms Access,Checkbox,Boolean,Linked Tables,我有一个使用链接Oracle表的access文件 在Access中打开链接表时,我希望有一列显示为复选框,就像YES/NOAccess数据类型一样 有人知道我怎样才能做到这一点吗?非常感谢您的帮助。如果您反对为链接表使用带有复选框控件的表单,您可以修改链接表的TableDef。将DisplayControl属性添加到数值字段中,属性值为106作为复选框 我在即时窗口中运行了以下示例dbo_foo链接到SQL Server表,因为我没有可用的Oracle。Access将字段a_number解释为长

我有一个使用链接Oracle表的access文件

在Access中打开链接表时,我希望有一列显示为复选框,就像
YES
/
NO
Access数据类型一样


有人知道我怎样才能做到这一点吗?非常感谢您的帮助。

如果您反对为链接表使用带有复选框控件的表单,您可以修改链接表的
TableDef
。将DisplayControl属性添加到数值字段中,属性值为106作为复选框

我在即时窗口中运行了以下示例
dbo_foo
链接到SQL Server表,因为我没有可用的Oracle。Access将字段
a_number
解释为长整数(不是是/否数据类型)

set db=currentdb
设置fld=db.TableDefs(“dbo\u foo”).字段(“a\u编号”)
fld.Properties.Append fld.CreateProperty(“DisplayControl”,dbInteger,106)
'验证使用正确的值创建的属性。。。
? fld.属性(“显示控件”)
106
如果出于某种原因,您的目标字段已经设置了不同的DisplayControl值,只需更改该值(而不是使用
.Append
.CreateProperty

fld.Properties(“DisplayControl”)=106

设置属性后,在数据表视图中打开
dbo\u foo
时,my
a\u number
字段将显示为复选框。看看这种方法是否能满足您对Oracle表的需求

如果您反对对链接表使用带有复选框控件的窗体,则可以修改链接表的
TableDef
。将DisplayControl属性添加到数值字段中,属性值为106作为复选框

我在即时窗口中运行了以下示例
dbo_foo
链接到SQL Server表,因为我没有可用的Oracle。Access将字段
a_number
解释为长整数(不是是/否数据类型)

set db=currentdb
设置fld=db.TableDefs(“dbo\u foo”).字段(“a\u编号”)
fld.Properties.Append fld.CreateProperty(“DisplayControl”,dbInteger,106)
'验证使用正确的值创建的属性。。。
? fld.属性(“显示控件”)
106
如果出于某种原因,您的目标字段已经设置了不同的DisplayControl值,只需更改该值(而不是使用
.Append
.CreateProperty

fld.Properties(“DisplayControl”)=106

设置属性后,在数据表视图中打开
dbo\u foo
时,my
a\u number
字段将显示为复选框。看看这种方法是否能满足您对Oracle表的需求

为什么不使用更适合编辑表的表单?@Remou这是一个大型Access应用程序的一部分,它有直接到表的路径。我们正试图逐步淘汰Access应用程序,第一步是将本地表移动到链接Oracle表。我们不希望花费任何额外的时间向Access应用程序添加新功能。根据您的表创建数据表表单最多需要5分钟,我想这是你对复选框的唯一希望。为什么不使用更适合编辑表的表单呢?@Remou这是一个大型Access应用程序的一部分,它有直接到表的路径。我们正试图逐步淘汰Access应用程序,第一步是将本地表移动到链接Oracle表。我们不希望花费任何额外的时间向Access应用程序添加新功能。根据您的表创建数据表表单最多需要5分钟,我想这是您唯一希望的复选框。感谢您的回复这似乎是我想要走的方向。不过,我并不完全理解解决方案。如何将DisplayControl属性添加到数字字段?目前,我唯一知道在哪里设置DisplayControl的地方是给定列的Lookup选项卡下。如何/在何处以编程方式设置DisplayControl?我可以使用:set db=CurrentDb()引用本地访问表您知道如何引用链接表的db吗?也许您不熟悉立即窗口。用Ctrl+g打开它。然后键入
set db=currentdb
并按Enter键。在下一行中,键入
set fld=db.TableDefs(“YourLinkedTable”).Fields(“YourNumericField”)
并按Enter键。在第三行,粘贴答案中以
fld.Properties.Append
开头的那一行,然后按Enter键。您是对的,我不熟悉即时窗口。我整个上午都在里面闲逛。我按照您的指示操作,链接表上的数字字段现在显示为复选框。在查找选项卡下,“显示控制”字段设置为106。通过关闭并重新打开Access文件,更改仍然存在。非常感谢你!是的,从用户界面来看,情况令人困惑。“查找”选项卡的“显示控制”选项仅允许您从它提供的值中进行选择。如果您输入106,它将拒绝它。但是,如果您从TableDef通过字段的DisplayControl属性分配106,Access会很高兴地使用它并将字段显示为复选框。感谢您的回复,这似乎是我想要的方向。不过,我并不完全理解解决方案。如何将DisplayControl属性添加到数字字段?目前,我唯一知道在哪里设置DisplayControl的地方是给定列的Lookup选项卡下。如何/在何处以编程方式设置DisplayControl?我可以使用:set db=CurrentDb()引用本地访问表您知道如何引用链接表的db吗?也许您不熟悉立即窗口。用Ctrl+g打开它。然后键入
set db=currentdb
并按Enter键。在下一行中,键入<