语法错误 (操作符丢失) 在查询表达式 'column1_id=' 中。

语法错误 (操作符丢失) 在查询表达式 'column1_id=' 中。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.OleDb.OleDbException: 语法错误 (操作符丢失) 在查询表达式 'column1_id=' 中。

源错误:

行 24: OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
行 25: DataSet ds = new DataSet();
行 26: adp.Fill(ds, table);
行 27: return ds.Tables[table];
行 28: }

源文件: c:\Users\13320\OneDrive\桌面\山东大学网站站长\App_code\dataOperate.cs 行: 26

堆栈跟踪:

堆栈跟踪:

[OleDbException (0x80040e14): 语法错误 (操作符丢失) 在查询表达式 'column1_id=' 中。]

堆栈跟踪:


[OleDbException (0x80040e14): 语法错误 (操作符丢失) 在查询表达式 'column1_id=' 中。]
   System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr) +1216769
   System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +256
   System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +216
   System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +60
   System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +164
   System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior) +115
   System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) +10
   System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +140
   System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +138
   System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) +87
   dataOperate.rows(String sql, String table) in c:\Users\13320\OneDrive\桌面\山东大学网站站长\App_code\dataOperate.cs:26
   详细页.bindtorepeater1() in c:\Users\13320\OneDrive\桌面\山东大学网站站长\详细页.aspx.cs:36
   详细页.Page_Load(Object sender, EventArgs e) in c:\Users\13320\OneDrive\桌面\山东大学网站站长\详细页.aspx.cs:15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +52
   System.Web.UI.Control.OnLoad(EventArgs e) +97
   System.Web.UI.Control.LoadRecursive() +61
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +693


```而我在检查时,显示这里有错
 public DataTable rows(string sql, string table)
    {
        OleDbConnection conn = new OleDbConnection("provider = microsoft.ace.oledb.12.0;data source =|DataDirectory|columnss.accdb");
        OleDbCommand cmd = new OleDbCommand(sql, conn);
        OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
        DataSet ds = new DataSet();
        adp.Fill(ds, table);
        return ds.Tables[table];
    }

```页面:




OleDbCommand cmd = new OleDbCommand(sql, conn);
这里看下 sql 是什么,你的报错是sql 写错了。

不确定你定义的字段类型是什么,你尝试一下在参数上加个单引号看看?

string sql = "select * from columnss where column1_id='" + id + "'";