各位,程序实现一个简单查询            
            OleDbConnection LoginCon = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data            Source=D:\AJZD\AJZD\AJZD\bin\Debug\AJZD.mdb");
            LoginCon.Open();            OleDbCommand LoginComm = LoginCon.CreateCommand();
            LoginComm.CommandText = "SELECT * FROM user";            OleDbDataReader LoginReader = LoginComm.ExecuteReader();
            可是程序到最后一条语句执行的时候,C#2005报“FROM子句有语法错误!”
这么简单的一个查询应该不会有错误吧?????是不是C#操作数据库的时候有什么错误!

解决方案 »

  1.   

    SELECT * FROM [user]试试,你用的是什么数据库?在SQL里面user是关键字
      

  2.   

    可能user是关键字试一试SELECT * FROM [user]
      

  3.   

    OleDbConnection LoginCon = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\AJZD\AJZD\AJZD\bin\Debug\AJZD.mdb");
      LoginCon.Open();String sql="SELECT * FROM user";OleDbCommand LoginComm = LoginCon.CreateCommand(sql,loginCon);OleDbDataReader LoginReader = LoginComm.ExecuteReader();不知道这样写对不对?
      

  4.   


    是不是你的ACCESS数据库的表名没有改成USER啊?类似于EXCEL的sheet名的那个东西。
      

  5.   


    //试试:
    OleDbConnection LoginCon = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\AJZD\AJZD\AJZD\bin\Debug\AJZD.mdb");
      LoginCon.Open();  OleDbCommand LoginComm = LoginCon.CreateCommand();
      LoginComm.Connection = LoginCon;//加上
      LoginComm.CommandText = "SELECT * FROM [user]";//加上[],标准写法,防止有关键字  OleDbDataReader LoginReader = LoginComm.ExecuteReader();
      

  6.   

    OleDbConnection LoginCon = new OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\AJZD\AJZD\AJZD\bin\Debug\AJZD.mdb");LoginCon.Open();DataTable dt = new DataTable("user");
    OleDbDataAdapter da = new OleDbDataAdapter(LoginCon,"SELECT * FROM [user]");da.Fill(dt);
      

  7.   

    user是关键字,必须要[user]才可以