点菜系统中点击按钮在删除msflexgrid中的项的同时,删除数据库中的该记录,以下代码老是报错
Dim tPrivate Sub Command1_Click()
 MSFlexGrid1.RemoveItem Rowxtsql As String
 txtsql = "delete 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'"
 Dim DelCommand As New ADODB.Command
 DelCommand.ActiveConnection = Conn
 DelCommand.CommandTimeout = 300
 DelCommand.CommandText = txtsql
 DelCommand.Execute
end sub
 
 报错为:实时错误‘-2147217900(80040e14)'
[Microsoft][ODBC Microsoft Access Driver]语法错误(操作符丢失)在查询表达式,'点菜 where 名称='酸菜肉丝''中.

解决方案 »

  1.   

    DELETE FROM 表名称 WHERE 列名称 = 值
      

  2.   

    txtsql = "delete from 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'"
      

  3.   

    把这一句的单引号改成英文的双引号:txtsql = "delete 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'"
    改成这样:txtsql = "delete 点菜 where 名称=""" & _
        Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & """"
    注意,要在VB字符串中包含双引号,要像上面这样连写两个双引号。
      

  4.   

    http://http://download.csdn.net/source/1498324
      

  5.   

    txtsql = "delete from 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'" 
      

  6.   

    语法错误,delete from 表名 where 条件
      

  7.   

    我的语法没有错误啊,表名就是:点菜,名称是其中一个字段,条件是 名称=msflexgrid中的一个值啊
      

  8.   

    你少了from这个关键字……
    你写的是delete 点菜
    正确的应该是delete from 点菜
    这下该明白了吧?
      

  9.   

    txtsql = "delete 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'" 
    改为:
    '如果是SQL SERVER
    txtsql = "delete  from 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'" '如果是ACCESS
    txtsql = "delete * FROM 点菜 where 名称='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'" 
      

  10.   

    需要用 from
    delete from 点菜 where 名称='XXX'
      

  11.   

    Dim tPrivate Sub Command1_Click() 
    MSFlexGrid1.RemoveItem Rowxtsql As String 
     牛人! 你确认是复制过来吗?先把代码写清楚才能帮你
      

  12.   


    txtsql = "delete [点菜] where [名称]='" & Trim(Me.MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 1)) & "'"
    建议不使用中文字段名,省得出现不必要的麻烦。