没有从SQL查询返回的表。怎么会发生这种情况?

时间:2010-12-02 16:07:32

标签: c# ms-access oledb

我遇到下一个代码的问题:

try
        {
            OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Database.accdb;Jet OLEDB:Database Password=LuzDary;");
            OleDbDataAdapter Data = new OleDbDataAdapter("SELECT * FROM Articulos", Conn);
            DataSet DSet = new DataSet();
            Conn.Open();
            Data.Fill(DSet);
            Conn.Close();
            _Articulos = DSet.Tables["Articulos"];
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

try / catch是因为我的VStudio 2010安装不太能够以某种方式检测COM异常(有同样的问题用ADOX创建数据库,异常未被捕获,代码保持以某种方式响应运行,但数据库是从未写入磁盘。)

数据库已经有了“Articulos”表,并且我在那里手动插入了一些记录,但是如果我使用DataSet,我只得到一个名为“Table”的表。现在这令人沮丧:(

1 个答案:

答案 0 :(得分:0)

DSet.Tables [0] .Rows就是你想要的。

这就是我的意思。

_Articulos = DSet.Tables[0];

这样,_Articulos.Rows应填充数据库中的记录。