我想在C#程序的组合框中列出Microsoft Access 2000-2007(取决于MS Access数据库版本)的数据类型。我怎样才能做到这样的事情?如何获取MS Access数据类型的列表?
0
A
回答
2
我不认为有可能在运行时询问引擎来枚举它支持的数据类型。例如,DAO不会公开某些Jet 4.0数据类型,例如NCHAR
和BINARY
; ADO将揭示Access数据库引擎从不支持的数据类型;只有ACEDAO会显示多值类型。
我认为您需要事先知道引擎支持的每个版本的数据类型,然后在运行时选择适当的设置。
Jet 4.0数据类型(包括Access 2000到2003)和各种同义词可以找到here(还应提供一些有关Jet 4.0的新类型的提示,以防您需要支持早期版本的引擎) 。
ACE(Access2007)添加了附件类型;还有多值(“复杂”)类型以支持SharePoint列表:我认为您需要自行判断多值类型是不同类型还是仅仅对现有类型的变体。 Access2007 Help中有一些细节。
2
Microsoft.Office.Interop.Access.Dao.DataTypeEnum
当然,你需要添加一个参考,我很讨厌将参考办公室,因为你绑到一个版本的Office,以及我讨厌每次升级时更新代码。
相关问题
- 1. 如何从MS Access获取数据库列表?
- 2. 从ms-access到ms-word获取数据
- 3. MS Access - 我如何使用表格作为数据类型
- 4. 如何从MS Access数据库获取表名?
- 5. 如何创建模型从MS Access数据库读取数据?
- 6. MS Access SQL,更改数据类型
- 7. MS Access - 数据类型不匹配
- 8. MS Access数据类型不匹配C#
- 9. MS Access?关于数据类型
- 10. 如何找到MS Access表中列的类型?
- 11. 如何获取Django模型的数据类型列表?
- 12. 如何获取Access(Jet)数据库中的表的列表?
- 13. MS Access - 标准表达式中的数据类型不匹配
- 14. 使用不同的数据类型连接两个表MS Access
- 15. 如何使用MS Access以.NET升序获取日期列表
- 16. 如何从MS Access获取视图列表
- 17. 如何获取GEOMETRY数据类型列中的条目类型
- 18. 如何使用备注数据类型将XML导入MS Access?
- 19. 如何获取PostgreSQL中表的列名和数据类型?
- 20. 如何从MS Project文件中获取数字类型列数据?
- 21. MS Access“Number”类型对应哪个C#数据类型?
- 22. 如何从数据表中获取相同数据类型的列表
- 23. MS ACCESS交叉表数据
- 24. 如何从MS ACCESS数据库中的特定行和列中获取值?
- 25. 如何使用C++获取MS Access数据库列的默认值?
- 26. 我需要能够找到MS Access表中列的数据类型。
- 27. 续集:如何获取数据集列的数据类型
- 28. MS Access:如何在Access Web App中添加15天(数据类型)
- 29. 获取使用的MS Access
- 30. 使用Android上的StelsMDB从MS Access数据库获取数据
你想访问数据类型或Jet/ACE数据类型吗?可能因为您使用的是C#,您只需要Jet/ACE数据类型,但它可能是您使用的数据库是由Access创建的,并使用特定于Access的数据类型(这通常是带有扩展的常规Jet/ACE数据类型属性,例如超链接字段,它是一个具有特定设置的备忘录字段,用于指示访问它是超链接字段而不仅仅是常规备忘录字段)。 – 2009-07-23 01:09:21
是的,我想使用特定的MS Access数据类型。如果我没有错误的是ACE与MS Access 2000-2007兼容?我试图让我的程序能够打开MS Access 2000-2007数据库。因此,例如,如果我打开一个MS Access 2003,我希望我的程序能够使用任何特定于MS Access 2003的数据的数据类型。如果我打开一个MS Access 2007数据库,它将用于MS Access的任何数据的数据类型2007 ... – Partial 2009-07-23 14:21:02
我正在关闭这个问题,因为它不够彻底,我想知道一些其他的东西...这里是新问题的链接:http://stackoverflow.com/questions/1172617/ – Partial 2009-07-23 15:48:14