我现在为每一上数据表写了一个DAL类来进行插入、删除等操作。可是我现在在实现的时候需要同时操作多个数据表,
比如:select id ,(select name from 表2 where 表2.id = 表1.id) from 表1。像这样,我就需要同时从多个数据表中读取信息,这种情况,应该怎么应用三层结构呀?

解决方案 »

  1.   

    如果楼主是用VS2005的话,
    数据访问层应该用强类型的DataSet!!
      

  2.   

    因为我现在要在表示层将从BLL中取出的数据绑定到一个datagridview上,可是bll对就的那个dal只是操作一个数据表,而我需要显示的信息需要同时从两张表中获取。因此,我很困惑,不知道该怎么搞了。
      

  3.   

    因为我现在要在表示层中将从BLL中取出的数据绑定到一个datagridview上,可是bll对的那个dal只是操作一个数据表,而我需要显示的信息需要同时从两张表中获取。因此,我很困惑,不知道该怎么搞了。
      

  4.   

    1.定义一个dateset = select id ,(select name from 表2 where 表2.id = 表1.id) from 表1 where 条件;
    2.把dateset绑定到你的datagridview。datagridview.datesoruce=dateset;
    3.关于楼主的疑惑不用担心,你的操作两个数据库返回的还是一个dateset,主要是你要SQL语句写好就没什么问题了。你可以试试这样的方法,希望能解决您的疑惑
      

  5.   

    你觉得哪个表比较重要,就写在那个表的DAL文件里。
    或者单独写一些类来处理关联的关系。
    一个DAL处理表单数据是一个类,遵循写一个类的一些原则,如单一职责、开闭、依赖倒置等,遵循这些原则就可以了。
      

  6.   


    select 表1.id,表2.name from 表1,表2 where 表1.id=表2.id;
      

  7.   

    是个办法。楼上有几位提到视图,这个视图放在DAL中吗?小弟不是很懂,愿闻其详