delete 數据表中一個field(在list2.text中)是不是這樣.
Private Sub deleteitem_Click(Index As Integer)
newtb.Columns.Delete list2.text
Adodc1.Refresh
DataGrid1.Refresh
End Sub怎么運行出錯啊?

解决方案 »

  1.   


    这样只允许delete单独的recordset的列.如果要更改表结构,用SQL语句:alter table drop column ......
      

  2.   

    如果我想delete數据表newtb的field 名為NO的這一列. 怎么寫好一些?
    我用的是ADO + datagrid.
      

  3.   

    楼主的程序应该是通过Index传过来的参数来删除NO这一列的值吧,这样删除出错可能情况是NO这一字段的属性为必填字段,那一删除当然就出错了。
    还有楼主是想只删除这一例的值保留NO这一字段呢,还是连NO这一字段也删除?
    list2.text一般都是数据库中的ID字段吧,ID字段一般都是自动编号的,是必填字段,是不可删除值的吧!
      

  4.   

    delete rs.fieds("no") from newtb
    你试试这个可行吗,这样删如果可行的话就是连字段一起删了。
    我没遇到过这种情况,楼主试试看。不过要保证newtb中必需要有至少二个字段啊!否则就不能删除了。
      

  5.   

    '工程->引用Microsoft ActiveX Data Objects 2.x Library
    Option Explicit
        Public mCnnstring As StringPrivate Sub deleteitem_Click()
        Dim mCnn As New ADODB.Connection
        mCnn.Open mCnnstring
        mCnn.Execute ("Alter Table newtb Drop Column Num")    '若字段名为NO,系统会提示语法错误,不允许删除NO名称的字段,所以要改为Num或其他
        mCnn.Close
        Set mCnn = Nothing
    End SubPrivate Sub Form_Load()
        mCnnstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db1.mdb" & ";Persist Security Info=False"
    End Sub
      

  6.   

    如果我想delete數据表newtb的field 名為NO的這一列. 怎么寫好一些?
    我用的是ADO + datagrid還是不行啊! 我是想整個一列都delete. field名在list2.text中.請各位再幫忙啊!