什么时候才能 摆脱SQL语句的烦恼?
应该说,SQL语句,真的心很强大。但是我一直都觉得比较奇怪。为什么要用SQL语句作为介质。
而不是直接暴露数据库中的一些方法给我们调用。。。。
SQL的好处:
强大,灵活,传输量也不是很大。
但是也有坏处:
解析SQL。
SQL标准不统一。
每次用ado.net 都觉得很烦。
要写很多SQL,要写很多方法...
我几次尝试,想把SQL语句封装到类里面,然后通过使用反射,直接接受对象,然后自动遍历对象,并实现怎删改查。。。
好处是不需要维护SQL语句和数据操作类了。。。
只需要维护对象和,逻辑代码。但,一些复杂的逻辑还是一样要SQL。
相当麻烦....
我觉得,要想提高生产效率 真的有必要,出现一个统一的中间层。
用方法替代掉所有的SQL语句。
有没有童鞋有什么好的设计思路。。。
——————————————————————————————————
最近出现了,Repository模式,晕啊,我觉得最近出现的IOC,领域驱动,还有之前的ORM,等等都是因为SQL,SQL语句,关系数据库。。。。
SQL语句这个折磨了成千上万程序员的东西,什么时候才是该退出历史舞台的时候。。。。
各位 不妨 讨论讨论,这方面的问题
sql
数据库
ioc
orm
NOSQL
------解决方案--------------------退不出的 不要以为人家在吹嘘no sql 就觉得他能取代sql 你得知道像sap peoplesoft siebel这些大型企业级应用 是没法不用sql的
------解决方案--------------------Entity Framework不就是解决这个问题的吗。
------解决方案--------------------让别人来写,自己用。
------解决方案--------------------别干这行了。
------解决方案--------------------让dba写好,然后你调用,要不然不写sql至少在我看来是一个梦,南柯一梦。
------解决方案--------------------------解决方案--------------------留给DB写把
------解决方案--------------------不做码农的时候
------解决方案--------------------想法是好的,但是在你这个知识层次上考虑这些略显不足。
如同明朝的万户,考虑人类如何脱离地球的束缚飞往太空,他的知识水平和认识没有到那个层次。他的想法是朴素的,没有实际价值的,甚至是危险的,他本人最后也是一个悲剧。
------解决方案--------------------其实.NET已经做得尽量让程序员远离自己写很多SQL代码的事了,可以拖放数据组建,简单勾勾选选就可以了,还有就是如这种整个数据库软件只写少量SQL代码就可以了.
------解决方案--------------------亲,反射的效率实在是太低,能不反射尽量就别用。
拼sql文还是老老实实的写吧,只要把sqlhelper这类的工具用熟了,套一套就行了。
------解决方案--------------------
有见地啊,哲学思密达。。。
------解决方案--------------------
呵呵,增删查改
------解决方案--------------------最起码,现在不可能,而且在很长一段时间内都不可能。
就如同中国现在处于社会主义初级阶段,并且将长期处于社会主义初级阶段。
------解决方案--------------------
对于简单的SQL语句,ORM确实减少不了多少代码量,仅仅只是对于IDE更友好而已,因为需求是一一对应的。
对于复杂的需求组合,ORM可以实现关联关系的一次性处理,这个是SQL语句不可能做到的。
另外一点,ORM可以为界面提供树状视图(你可以Answer.Question.User...),不是二维表格。
如果要抛弃SQL语句,就不能以SQL功能为出发点来设计ORM,否则难以摆脱所谓的复杂的SQL语句。
比如http://www.51nod.com/today.html#!type=all,实践证明没有SQL语句的项目做得更舒心。