网站的数据库与MVC架构,请有经验的高手解答 20

第一个问题:数据库的设计一般遵循第三范式,但是有时候会出现多对多的关系,怎么处理比较好?两个表之间有外键,但是有时候级联删除会破坏一些我想保留的数据,不级联删除的话数据的... 第一个问题:数据库的设计一般遵循第三范式,但是有时候会出现多对多的关系,怎么处理比较好?两个表之间有外键,但是有时候级联删除会破坏一些我想保留的数据,不级联删除的话数据的一致性又要如何保持?
第二个问题:MVC架构中,我往往在view层直接写方法取数据库的数据,因为有些操作感觉很难封装到DAO类中去,具体项目中是怎么操作的?
就拿一个学生管理系统来说吧,一般就有这么几个表:学生信息、老师信息、课程信息,为了把这几个表联系起来那么就需要再多两张表,一张是老师能教什么课,一张是学生选了什么课。这样为了保证操作,我至少需要5个界面。但是这只是一个小案例,当表很多,关系很复杂的时候,为了维护数据的一致性需要的界面就非常多了,有更好的方法吗?
view用来显示的,但是比如我想查询一个表或者多个表中的一些字段而已,这样的查询感觉不好写在controller里面,怎么办
展开
 我来答
百度网友702ea5f
2013-07-18 · 超过14用户采纳过TA的回答
知道答主
回答量:118
采纳率:0%
帮助的人:42.3万
展开全部
第一个问题:多对多关系需要用第三张表来联系起来

第二个问题: 在MVC中最后不要把逻辑和数据处理最后不要写在View中,一般写在控制器中,要不然维护起来是要命的,View用来展示就足够了
追问
追问写不下,补充到原来的问题里面了
追答
我还是回答第二个问题把,第一个问题不好说,书上有详细的解释。SQL Server 2008宝典就有

在MVC里 Controler里查询出数据,用实体存起来再存在ViewBag 或viewdate里, 页面在获取ViewBag 或viewdate数据就行了
如果是多个表的某些字段,你可以根据需要的字段建一个实体类
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鱼儿12飞飞
2013-07-18
知道答主
回答量:8
采纳率:0%
帮助的人:3.5万
展开全部
你那第一个问题可以另外建一个表 再通过这张表于这两张表建立关系 不就可以了吗
一般在项目中都会封装一些常用的方法 直接在Dao中调用 也有一些特殊的就在Dao中写咯
追问
这我也知道。。。你做过没有?能详细点说吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
翔晔子
2013-07-19 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:95.4万
展开全部
用 动软代码生成器可以直接生成
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式