2011-12-27 104 views
1

我有两个dbf表,并且必须按列(字段)类型比较它们。例如:修复Float和Numeric字段类型之间的区别

表1:Id (Numeric) | Name (Character) | Salary (Numeric)
表2:Id (Numeric) | Name (Character) | Salary (Float)

有了这两个表程序应该显示像信息(类型不匹配在字段SALARY [F <> N])其中F是浮子和N是数字。

所以我找不到这个字段之间的区别,因为这两个表

Using cmd2 As New OleDb.OleDbCommand("select * from Table1", connection) 
        Dim reader As OleDb.OleDbDataReader 
        reader = cmd2.ExecuteReader() 

    reader.GetDataTypeName(2) 'returns DBTYPE_NUMERIC 
    reader.GetFieldType(2) 'returns System.Decimal 
End Using 

    Using cmd3 As New OleDb.OleDbCommand("select * from Table2", connection) 
        Dim reader2 As OleDb.OleDbDataReader 
        reader2 = cmd3.ExecuteReader() 

    reader2.GetDataTypeName(2) 'returns DBTYPE_NUMERIC 
    reader2.GetFieldType(2) 'returns System.Decimal 
End Using 

我可以在记事本中打开DBF文件查看“F”和“否”的dbf标题字符,但不能阅读到VB,我不认为这是个好主意。

我该如何处理这个问题?

回答

0

FN类型完全一样,它们之间没有区别。

一个更有用的区别是他们的设置,因为您可以指定在该字段中存储多少个数字和多少个小数位。

不幸的是,我不知道如何检查在VB.Net中。