2010-12-02 53 views
0

林具有下一个代码的问题:没有从SQL查询返回的表。这怎么会发生?

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”表,我手动插入一些记录,但如果我foreach数据集,我只得到一个名为“表”的表。现在,这是越来越令人沮丧:(

回答

0

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

这是我的意思。

_Articulos = DSet.Tables[0]; 

就这样,_Articulos.Rows应该是填充与数据库中的记录进行比较

+0

说得更好一点,DataSet中名为“Table”的表实际上就是您想要的表格 – seekerOfKnowledge 2010-12-02 16:21:51