首页 新闻 会员 周边 捐助

dataset在数据库与表示层中起到什么作用

0
悬赏园豆:15 [已解决问题] 解决于 2010-09-26 14:33

  我知道表示层读取到的数据是放到事先创建好的dataset中的,但是我要读取数据库里的数据,一定要创建个dataset吗,我没创建的话,系统会不会自动生成一个dataset,然后把我读取的数据放到里面啊?
  然后,我在表示层增加,删除和更新数据的时候,是直接操作的数据库吗;还是通过先更改dataset中的数据,此时数据库中的数据没变化,再通过sql语句实现数据库里 的数据更改啊,要是后者的话,是通过哪条sql语句来实现数据库中数据的更改啊 ,谢谢

问题补充: 越详细越好
七夜雪的主页 七夜雪 | 初学一级 | 园豆:125
提问于:2010-09-17 13:58
< >
分享
最佳答案
0

你要从数据库取数据不一定非要放在大Dataset里,放在Dataset只是你其中的一个选择,你要知道,你从数据库查数据,查出来的数据放在什么地方,你由你自己决定的,可以不是Dataset,只要你能把读取来的数据存储起来,放在哪都行,最终这写数据是要返回给显示层的,比如你可以将读出来的数据放在集合中,如List!

至于你上面问的“会不会自动生成一个dataset”?我不明白你的意思,如果你用数据源控件的话,会自动生成DataSet,创建DataSet的过程是控件帮你做的,所以你就不需要自己创建了,如果你不用数据源控件的话,你就需要手动的来创建DataSet

“我在表示层增加,删除和更新数据的时候,是直接操作的数据库吗”,如果你是自己写的SQL语句,当然是直接操作的数据库了,如果你是先更新的DataSet,那么最终会不会更新到数据库,要看你代码怎么写了

收获园豆:15
yixin841210 | 小虾三级 |园豆:1138 | 2010-09-17 15:20
非常感谢您的回答
七夜雪 | 园豆:125 (初学一级) | 2010-09-17 15:29
其他回答(3)
0

这个问题很深奥。

中尉 | 园豆:252 (菜鸟二级) | 2010-09-17 14:36
0

现在都是通过传递Model或返回List,然后在表现层进行相关的展示操作。

Astar | 园豆:40805 (高人七级) | 2010-09-17 15:00
具体实现过程能详细说明一下吗,我是那种刨根问底类型的,谢谢
支持(0) 反对(0) 七夜雪 | 园豆:125 (初学一级) | 2010-09-17 15:05
@七夜雪:看过PetShop源码吗。可以下载个。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-09-17 15:07
没听说了 我先看看 谢谢你
支持(0) 反对(0) 七夜雪 | 园豆:125 (初学一级) | 2010-09-17 15:30
0

我想楼主的意思可能是这样,在dal层,如果用adapter取数据的话,会是da.fill(ds);

这样肯定要生成一个dataset,如果dal返回的是一个datatable的话,到时候在bll用

datatable dt=dal.xxx();

这样在bll会不会生成一个dataset。。。。

顾晓北 | 园豆:10898 (专家六级) | 2010-09-17 18:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册