我的表名是正确的 默认值是0  可是它怎么老是这个错误啊 

解决方案 »

  1.   

    SQL语句对吗?给个DEMO你自己看看.
    public static void ReadData(string connectionString)
    {
        string queryString = "SELECT DISTINCT CustomerID FROM Orders";
        using (OleDbConnection connection = new OleDbConnection(connectionString))
        {
            OleDbCommand command = new OleDbCommand(queryString, connection);        connection.Open();
            OleDbDataReader reader = command.ExecuteReader();        int customerID = reader.GetOrdinal("CustomerID");        while (reader.Read())
            {
                Console.WriteLine("CustomerID={0}", reader.GetString(customerID));
            }
            reader.Close();
        }
    }
      

  2.   

    把reader.GetOrdinal那个提出来放到变量里
      

  3.   

    reader.GetOrdinal("CustomerID")得到的是CustomerID,相当于行号,你用Reader.GetInt32(ID)相当于访问ID这一列,当然不对。