用vb直接对dbf文件进行操作,用ado+datagrid可以显示和修改dbf文件的内容
但是不能在dbf文件中添加新的字段,下面是一段添加字段的代码
Dim sqlStatement As String
Dim typeString As String
Dim db As Connection
Dim adoPrimaryRS As Recordset
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=MSDASQL;dsn=dBASE Files;uid=;pwd=;"
Set adoPrimaryRS = New Recordset
sqlStatement = "ALTER TABLE " & TableName & " ADD " & newFieldName & " " & field_type 'tablename-表名,newFieldName--新的字段名,field_type--字段类型
adoPrimaryRS.Open sqlStatement, db, adOpenStatic, adLockOptimistic
但是运行后提示错误如下:
Error: [Microsoft][ODBC dBase Driver] 含有数据的表不支持的操作。 (-2147467259)         16           Column Add Error
---------------------请大虾帮忙啊

解决方案 »

  1.   

    先备份数据,然后DROP表,再重建,接着还原数据
      

  2.   

    打开库连接后直接运行sql就行
    db.execute sqlStatement
      

  3.   

    不行啊,总是提示Error: [Microsoft][ODBC dBase Driver] 含有数据的表不支持的操作。 (-2147467259)         16           Column Add Error
      

  4.   

    使用SQL语句要用ADO控件啊~~~~
    晕~
      

  5.   

    我想问个问题谁能解答?       Dim Doc As IHTMLDocument2
           Set Doc = WebBrowser1.Document
           Dim Inputs As IHTMLElementCollection
           Set Inputs = doc.All.tags("INPUT")        Dim Element As IHTMLElement
            Set Element = Inputs.Item(1, 1)        Dim InputElement As IHTMLInputElement
            Set InputElement = Element
            InputElement.Value = Text1.Text
            
            '调用此页第一个窗体上的提交
            doc.Forms.Item(0, 0).submit
    那如果我在这页有两个表单.Inputs.Item(1, 1)该怎么写?
    doc.Forms.Item(0, 0).submit有该如何提交第二个表单?
     
    请指点.
      

  6.   

    还是搞不定啊,不知道为什么:((((((是不是操作dbf文件不能添加字段?