大家好,我在VB中操作DBF文件,新建一个DBF文件,规定好格式,往中间插入数据,都可以正常进行,就是看插入后的数据的时候感觉跟自己定义的数据类型不太一样。
代码如下:
  Dim cnDBF     As ADODB.Connection
        Dim strConString     As String
        Dim strPath     As String
        Dim strSql     As String
        Dim str1 As String
        
        strPath = filepath
        strfile = "test." & "dbf"
        strConString = "Provider=" & "Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & ";Extended Properties=dBASE IV ;User ID=Admin;Password="
        
        Set cnDBF = New ADODB.Connection
        cnDBF.ConnectionString = strConString
        cnDBF.Open
        
       strSql = "CREATE   TABLE   [" & strfile & "]" & "(caller     char(20),called     char(20),talkfee    decimal(7, 2),infofee    decimal(8, 2))"
       
        cnDBF.Execute strSql
        Dim i As Integer
        
        For i = 1 To List1.ListItems.Count
                strSql = "Insert   into   " & strfile & _
                     "   Values('" + List1.ListItems(i).Text + "','" + List1.ListItems(i).SubItems(1) + "',0.00," + List1.ListItems(i).SubItems(3) + ")"
        cnDBF.Execute strSql
     
        Next i
     
     
     
        cnDBF.Close
        Set cnDBF = Nothing
具体情况是这样的:
talkfee,infofee这两列定义的是保留两位小数,但是插入数据后记事本打开看,都是有5位小数,不管我修改保留几位总是自动的保留5位小数,请各位帮忙看看,多谢!