我需要从Access表中生成字段(名称,类型和大小)的列表。这个简单的VB代码给我几乎我需要什么:从recordset.field.type属性获取ADO数据类型的名称?
Set rs = CurrentDb.OpenRecordset("myTable")
For x = 0 To rs.Fields.Count - 1
Print #1, rs.Fields(x).Name & vbTab & rs.Fields(x).Type & vbTab & rs.Fields(x).Size
Next
但是课程的“类型”就像是“10”,而不是像“将varchar”数字常量。
我要做到这一点:
Select Case rs.Fields(x).Type
Case adChar
fieldType = "adChar"
Case adInteger
fieldType = "adInteger"
Case adDouble
ETCETERA....
但我不知道是否有更好的办法,像DataTypeEnum.FindName(类型):什么?
如果这是一个“愚蠢的问题”,提前道歉,但我没有在VB每天工作,谷歌没有产生明确的答案。
这不是一个愚蠢的问题。尝试'Debug.Print TypeName(rs.Fields(x)),VarType(rs.Fields(x))'我还没有测试过,但只是给它一个 – 2013-11-01 21:28:29
有没有简单的方法来转换(在VBA中)一个枚举值到其等效的“名称”。你拥有它的方式几乎是你如何做到的。 –
艾伦布朗有一个很好的[页面列出常量](http://allenbrowne.com/ser-49.html),他甚至有一个[FieldTypeName](http://allenbrowne.com/func-06.html) (在该页面上向下滚动一点)功能,但您可能仍然需要自行滚动才能获得您想要的内容。 – Blackhawk