作者LaPass (LaPass)
看板java
标题[问题] 资料库的处理
时间Fri May 18 17:37:53 2012
我对资料库还蛮头痛的
想请问比较概念性的问题....
几乎只要写系统之类的程式,难免都会使用到资料库
虽然,简单来讲,就只是select update instert delete这四个动作而已
只要会这四个指令,就几乎可以把所有功能都做出来
顶多再多个creat drop alert就很多了
但是,弹性这麽大,也让人觉得用起来会很难用
常常看到资料表中的有个栏位不知道是在干麽的.....
一串SQL中的某个条件又不知道是干什麽用的
不知道资料表之间的关连性是怎麽样
或是,今天改了资料表,栏位多一个isDelete的判断
就要把所有的delete陈述式改成update set isdelete=1
偏偏删除的sql还在分布在很多地方
或许可以把SQL字串用个public static final String去存起来
但是,这样一来就会降低使用上的弹性
例如....
我常常看到程式码出现这种东西
String Sql="(....)";
if(A功能开启) Sql="UNION (........)";
if(B功能开启&&使用者属於B群组) Sql+=" UNION (.....) "
String Sql2 = "....."
(中略,又开另外一个搜寻去捞资料库的资料出来做判断)
if(判断成立)Sql+=" UNION (.....) "
......
像这种组合SQL语法的段落可以长达两三页,而且每个UNION中的陈述式又都很长
把这种东西放到public final static去存,也没什麽意义,因为还是一样乱
现在有机会自己写,程式跟资料库的桥接介面
在想方法让资料库用起来好用一些
请问有方法可以解决这种问题吗?
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.59.16.65
1F:推 mars90226:ORM吗?把资料库对应到物件 05/18 17:52
2F:→ LaPass:对应到物件好像也不是这麽好用.... 因为可能会有union之类 05/18 20:04
3F:→ LaPass:的,把不同资料的数据给弄成同一个输出。 05/18 20:07
4F:→ gwokae:原po对ORM很了解 (茶 05/18 22:54
5F:推 SHANGOYANYI:如果是我 那种一坨union的东西会建成view 05/19 01:24
6F:推 kimkao:推union改view, 或者适时的把这些需要被union的内容 05/19 09:18
7F:→ kimkao:改成多个具有商务意义的method,透过builder结合结果 05/19 09:20
8F:推 qrtt1:我比较喜欢将 sql 存进 template file 的方式 05/19 10:40
9F:推 asdfg2010:同上 template是好物 05/20 15:32