语法错误 (操作符丢失) 在查询表达式 '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 + "'";