作者:每天还贷的飞鱼 | 来源:互联网 | 2023-05-17 22:32
原题忘了,反正问的意思就是delphi连数据库是是把数据库代码写在delphi中好,还是写在SQLSERVER的存储过程中好,各位大哥大姐回复下你们多年开发的意见!
原题忘了,反正问的意思就是delphi 连数据库是是把数据库代码写在delphi 中好,还是写在SQL SERVER 的存储过程中好,各位大哥大姐回复下你们多年开发的意见!
27 个解决方案
那要分情况~~一般的都是在delphi里写比较好~~
啊!
其实一般我也是在delphi 里面写,但是delphi 里写的,SQL SERVER 后台每一次查询都要做查询分析啊,上一次查询分析的东西不会保存下来啊,除非两次查询的条件值完全相同!
人家考察你的就是经验问题!
这个问题本来就没有一个准确的答案,须视情况而定!
是啊.看服务器和一般客户机的能力.
服务器能力足够的话,写存储过程比较好,这样你更新数据计算时,不需要去维护程序.
1.复杂业务,多次执行,不需要返回大量数据的,使用存储过程效果好。
2.简单事务,使用SQL语句就可以了。
存储过程在数据库里是预编译的,速度更快..小应用没必要用
我觉得的是写在delphi 中是方便,写在存储过程中是为了优化,是否正确?
还有写在delphi 里的,有没有人测试过参数的问题?
(也就是SQL SERVER 优化时如果是用参数,则下次会用执行计划,但是如果不是用参数,则 select * from tablea where field1=1与select * from tablea where field1=2 会重新生成执行计划。
这种题目,提问者是比较狡猾的,你回答任何一个好都不一定是准确的,为了更加准确,你需要自己界定很多条件,比如是小的应用,那么delphi中写脚本会更好些,如果是频繁需要调用而且数据量大需要计算的,那么后台一次性处理完后再调用就好很多。
个人意见
需求为准,在不违背编程原则和制定的规范的基础上,自由发挥,你们这样循规蹈矩,成本多大啊,
Delphi向DBMS提交的TSQL,很多SQL被优化为用sp_executesql执行
看下我总结的是否存在问题:
在参数多,直接在delphi 里写代码好些。
而在参数不多,但是运算逻辑复杂的代码,放到存储过程中会更好。
在实际应用中大多数地方是直接在delphi 中写SQL 代码,而非调用存储过程!
想怎么用,就怎么用,只要一条:效率高,消耗资源小。
视具体情况而定,小程序变化 没有什么变化的 写在delphi里面
单纯玩DELPHI的同仁不可能回答正确的答案
对小系统来说写在哪里都没什么区别,只要实现功能
对中大型系统来说,区别就来了,对性能及调整、可管理性等很明显
如果考虑移植的话,不要用或者尽量少用存储过程;用程序写比较容易重构和扩展;程序中的数据结构表现方式也比存储过程好。
不过存储过程的优点是不用多次访问数据库,效率有严重问题的可以用存储过程优化。
个人看法。
总的说来很多可以说的 前面朋友说了不少
我说另一个
如果考虑该程序可能会在不同数据库之间迁移
很多写在Delphi中的代码可以重用滴
功能短小的写在DELPHI代码中,功能复杂的汇总写在存储过程中.
不过最主要的是要将所有的SQL集中的写一个和数据库交互的层中,别将SQL分散到各个单元文件中去.
搞在存储过程过程中的话,如果数据库在另一台机子上,调试和部署麻烦。