从Access数据库读取时,如何获取同一列中的单元格值

时间:2014-03-15 23:38:52

标签: c# sql ms-access-2010

我的数据库中有一个表,我需要获取与同一列对应的单元格值,并将它们显示在三个不同的文本框中。我得到的代码是:


    if (numberOrResults == 1)
                {
                    using (OleDbCommand cmdDataBase = conDataBase.CreateCommand())
                    {
                        // We declare the text of the query
                        cmdDataBase.CommandText =
                            "SELECT User_Subject.* FROM User_Subject WHERE User_ID = @user_id";

                        cmdDataBase.Parameters.AddRange(new OleDbParameter[]
                        {
                            new OleDbParameter("@user_id", currentUser.ID)
                        });

                        // Open database if not open
                        if (conDataBase.State != ConnectionState.Open)
                            conDataBase.Open();

                        // We need to use a using statement since OleDbDataReader inherits DbDataReader which implements IDisposable
                        // more info: http://msdn.microsoft.com/en-us/library/system.data.common.dbdatareader(v=vs.110).aspx
                        using (OleDbDataReader myReader = cmdDataBase.ExecuteReader())
                        {
                            var ordinals = new
                            {
                                Sub_Id = myReader.GetOrdinal("Subject_ID"),
                                Score = myReader.GetOrdinal("Score"),
                            };

                            while (myReader != null && myReader.Read())
                            {
                                // We read the data from the selected columns, rows and cells
                                currentUser.addSubject(myReader.GetInt32(ordinals.Sub_Id), myReader.GetInt32(ordinals.Score));
                                currentUser.English = myReader[4].ToString();
                                currentUser.Maths = myReader[5].ToString();
                                currentUser.Physics = myReader[6].ToString();
                            }
                        }
                    }
                }

该表有三列,我想获得第三列中单元格的值。现在,文本框中显示的数据是同一行中的三个单元格。

0 个答案:

没有答案