日期:2014-05-19  浏览次数:20835 次

如何怎么把数据库中所有表放到一个DataSet里面?
一个数据库中有100多个表
怎么一下子把所有表都放到DataSet里面?
一个表放一次太麻烦了

------解决方案--------------------
问题是你自己只要表名就好,有没有数据无所谓:
select name from dbo.sysobjects where OBJECTPROPERTY(id, N 'IsTable ') = 1
------解决方案--------------------
DataSet ds = new DataSet();
ds.Fill( "表名 ");

如果你真的要放100多个表的话,也只有用循环去放了..
------解决方案--------------------
select name from sysobjects where Xtype= 'U ' 查询出数据库中所有的表
再用循环拼sql 语名不就行了(strQuery)
再用下面的方法不就行了
strQuery=...;
SqlCommand mycmd = new SqlCommand(strQuery, myDbConn);
mycmd.CommandType = CommandType.Text;
myda.SelectCommand = mycmd;
myda.Fill(myds);
------解决方案--------------------
===================
========得到 当前数据库中的 用户表 U 代表用户表 S 代表系统表
select name from sysobjects where xtype= 'U '

然后 填充到 记录集

遍历 这个 记录集 循环添加到 DataSet 中去
DataSet ds = new DataSet();
ds.Tables.Add( "表名 ");