日期:2014-05-18  浏览次数:20823 次

ado.net访问数据库 查多张表来填充dataset的多个table
如果我需要查询数据库中的多张表来填充dataset中的多张表,我现在的代码是这么写的

[code=C#][/code] dataCommand.CommandText = "SElECT * FROM STORAGE_TYPE ORDER BY CONTAINER_TYPE_NAME";
  dataAdapter.Fill(dataSet, "storageType");
  dataCommand.CommandText = "SELECT CONTAINER_ID, CONTAINER_NAME FROM STORAGE_CONTAINER ORDER BY CONTAINER_NAME";
  dataAdapter.Fill(dataSet, "storageContainer");[code=C#][/code]

即多次执行dataAdapter.Fill();

这样做好么?
有没有别的方法?

------解决方案--------------------
如果我需要查询数据库中的多张表来填充dataset中的多张表,我现在的代码是这么写的

你这样做不行吗,应该可以的啊
------解决方案--------------------
dataCommand.CommandText = "SElECT * FROM STORAGE_TYPE ORDER BY CONTAINER_TYPE_NAME SELECT CONTAINER_ID, CONTAINER_NAME FROM STORAGE_CONTAINER ORDER BY CONTAINER_NAME";
dataAdapter.Fill(dataSet);

可以多条语句一起去查
------解决方案--------------------
查后在dataset里有多个datatable,分别对应你的select语句
------解决方案--------------------
把表明作为存储过程的参数传值
------解决方案--------------------
我 觉得这样写也是可以的!
------解决方案--------------------
探讨

dataCommand.CommandText = "SElECT * FROM STORAGE_TYPE ORDER BY CONTAINER_TYPE_NAME SELECT CONTAINER_ID, CONTAINER_NAME FROM STORAGE_CONTAINER ORDER BY CONTAINER_NAME";
dataAdapter.Fill(dataSet);

……