我需要一些帮助我的代码才能让我创建一个简单的每周调度系统。但我一直有错误说我错过了一个操作员,但我无法解决问题。
以下是我的vs项目中的代码:
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
public String databaseFile = "C:\\Temp\\database.mdb";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView2.DataBind();
}
}
public DataTable BindGridviewData()
{
DataTable dt;
OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + databaseFile + ";");
using (Conn)
{
Conn.Open();
OleDbCommand cmd = new OleDbCommand("SELECT * FROM Satellite ORDER BY RANDOM() LIMIT 1;", Conn);
using (OleDbDataAdapter oDA = new OleDbDataAdapter(cmd))
{
using (dt = new DataTable())
{
oDA.Fill(dt);
return dt;
}
}
}
}
但是当我运行这些代码时,它一直给我这个错误:
An exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll but was not handled in user code
Additional information: Syntax error (missing operator) in query expression 'RANDOM() LIMIT 1'.
我想知道如何解决这个问题,因为我似乎无法找到任何解决方案,谢谢。
答案 0 :(得分:1)
我相信您正在使用RAND()
。
//...
OleDbCommand cmd = new OleDbCommand("SELECT * FROM Satellite ORDER BY RAND();", Conn);
//...
您可能根本不需要ORDER BY
条款。如果订单无关紧要,为什么要点什么?