SQL语句 OR 存储过程? - .NET技术 / C#
执行数据库操作时,直接用SQL 语句好一些 还是用存储过程更佳呢?
各抒起见
这个的具体问题具体分析
简单的select 、update和insert当然sql解决了
复杂的放在sql服务端应该好点
楼主请参阅
http://msdn.microsoft.com/zh-cn/library/ms973918(v=MSDN.10).aspx
能用sql语句实现的不要用存储过程,复杂的功能和逻辑关系用存储过程
防止sql注入数据参数化
基础增删改查用SQL语句,
对于复杂业务,使用存储过程,对复杂查询也可以使用视图
优秀与非优秀之分
存储过程比较好,因为存储过程是预先编译好的,执行速度更快,而且更安全,可以有效的防止sql注入
最好还是使用存储过程这样可以,这样做的系统移植性还是比较好的。
使用存储过程的优点还是比较多的,防止sql注入,减轻了服务的负担等。
该说的楼上都说了....
顶上去,他们都说的有道理……
个人也这么认为。
复杂 调用存储过程
简单 直接用sql语句进行操作
从简,也方便修改
具体问题具体分析 我还是觉得sql语句更好用
这个要看具体的情况了
存储过程消耗的是服务器资源,我一般喜欢用sql把数据从服务端取过来在客户端进行复杂逻辑处理,毕竟服务器还是执行简单的select更好,这样能够更好发挥客户端的运算能力。
所以我觉得如果没有必要,最好还是不要用存储过程。
来学习学习!
有理
相关问答:
现在有两张表:文章主表A(articleId,articleTitle),文章评论表B(commentId,articleId,commentTitle)
现在我想实现这样的功能:列出文章列表,其中每篇文章标题下面列出此文章的前2个文章评论,请问sql语句怎么写啊 ......
现在有一个部门表dept(部门名称,部门号。。)有一个人员表emp(姓名,人员编号,职位,薪资,部门)
emp表中的内容是这样的:
a 1 工程师 3000 软件部
b 2 普通员工 2000 硬件部
c 3 工程师 4000 硬件部
d ......
表数据
COL1 COL2 COL2 COL4 COL5
----------------------------------------------------------------------------------------------
2010-05-05 00:00 ......
在Access的查询中执行下面的语句,无效,提示期待select ,updata ,...
CreateTble C=Answer N="回帖表"
(
C=ID T="INTEGER" P=No M=No N="编号" Z=false,
C=Ques ......