我在用JAVA做Access 数据库的删除操作,出现这样的问题java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'smtp where id=1' 中。不知道哪写错了,哪位高手给解决下代码如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public final class DataAccessor { public static Connection conn = null; public static Statement statement = null; public static ResultSet Rs = null; /**
 * 执行数据库的更新,删除,插入
 */
public static boolean Execute(String sql) { try {
String a="D:/db1.mdb";
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+a;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
conn =DriverManager.getConnection(url); Statement statement = conn.createStatement();

statement.executeUpdate(sql);

conn.commit(); conn.setAutoCommit(true); return true; } catch (Exception ex) { ex.printStackTrace();
} finally { try {
if (statement != null)
statement.close(); if (conn != null)
conn.close(); } catch (Exception e) {
e.printStackTrace(); } } return false; }
      public static void main(String []args){

        String sql="delete smtp where id=1";
DataAccessor.Execute(sql);
      }
   }