请教如何选择该使用stored procedure还是function? //stored procedure和function在用途上的区别這個當然有區別﹐存儲過程是可以進行insert,update,delete操作﹐而函數是處理那些存儲過程不好處理的方面﹐兩者互補結合起來﹐更加靈活好用﹗ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用 SQL Server 中的存储过程而不使用存储在客户计算机本地的 Transact-SQL 程序的优势有: 允许模块化程序设计。 只需创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。存储过程可由在数据库编程方面有专长的人员创建,并可独立于程序源代码而单独修改。允许更快执行。 如果某操作需要大量 Transact-SQL 代码或需重复执行,存储过程将比 Transact-SQL 批代码的执行要快。将在创建存储过程时对其进行分析和优化,并可在首次执行该过程后使用该过程的内存中版本。每次运行 Transact-SQL 语句时,都要从客户端重复发送,并且在 SQL Server 每次执行这些语句时,都要对其进行编译和优化。减少网络流量。 一个需要数百行 Transact-SQL 代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。可作为安全机制使用。 即使对于没有直接执行存储过程中语句的权限的用户,也可授予他们执行该存储过程的权限。SQL Server 存储过程是用 Transact-SQL 语句 CREATE PROCEDURE 创建的,并可用 ALTER PROCEDURE 语句进行修改。存储过程定义包含两个主要组成部分:过程名称及其参数的说明,以及过程的主体(其中包含执行过程操作的 Transact-SQL 语句)。存儲過程事務處理﹐而函數沒有這一功能 基本上处理事务的时候用存储过程,只是简单的计算获得结果的时候用函数另外函数不支持动态sql还有一些东西用起来就知道了,比如:函数可以select object_name(id) from sysobjects,针对每个结果行使用函数如果用存储过程... 這個當然有區別﹐存儲過程是可以進行insert,update,delete操作﹐而函數是處理那些存儲過程不好處理的方面﹐兩者互補結合起來﹐更加靈活好用﹗同時二者都可以縮小你寫程序的代碼 1、函数里的语法限制较多,如果不能胜任的那就用存储过程2、UDF,用起来得加用户名,我不喜欢3、一般用来返回结果集(返回客户端查询)的我都用存储过程4、如果返回的结果(标量或行集)是用于其他TSQL的,我一般 会用函数5、如果感觉无所谓,那就如2 hdhai9451(※★開拓者...前進☆※)你回复了一堆什么东西,下次看清题目。 [求一简单SQL]一张表中某条记录在另一张表中对应的记录数 请问 这句话是什么意思?是sql语句?谢谢 ??? SQL 技术难题,数组输出问题,高手帮忙! ??? 断开连接 关于链接服务器 我的SQL SERVER为什么如此消耗资源? 关于主从表的主表重复字段问题 一个小问题!!帮帮忙 數據庫Restore的問題 请各位高手帮忙,分布式查询问题 sql变量问题! 请问是在数据库中加一个缺省值好还是insert时加上这字段,再给一个固定值好?
只需创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。存储过程可由在数据库编程方面有专长的人员创建,并可独立于程序源代码而单独修改。允许更快执行。
如果某操作需要大量 Transact-SQL 代码或需重复执行,存储过程将比 Transact-SQL 批代码的执行要快。将在创建存储过程时对其进行分析和优化,并可在首次执行该过程后使用该过程的内存中版本。每次运行 Transact-SQL 语句时,都要从客户端重复发送,并且在 SQL Server 每次执行这些语句时,都要对其进行编译和优化。减少网络流量。
一个需要数百行 Transact-SQL 代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。可作为安全机制使用。
即使对于没有直接执行存储过程中语句的权限的用户,也可授予他们执行该存储过程的权限。SQL Server 存储过程是用 Transact-SQL 语句 CREATE PROCEDURE 创建的,并可用 ALTER PROCEDURE 语句进行修改。存储过程定义包含两个主要组成部分:过程名称及其参数的说明,以及过程的主体(其中包含执行过程操作的 Transact-SQL 语句)。
存儲過程事務處理﹐而函數沒有這一功能
另外函数不支持动态sql
还有一些东西用起来就知道了,比如:
函数可以select object_name(id) from sysobjects,针对每个结果行使用函数
如果用存储过程...
這個當然有區別﹐存儲過程是可以進行insert,update,delete操作﹐而函數是處理那些存儲過程不好處理的方面﹐兩者互補結合起來﹐更加靈活好用﹗同時二者都可以縮小你寫程序的代碼
2、UDF,用起来得加用户名,我不喜欢
3、一般用来返回结果集(返回客户端查询)的我都用存储过程
4、如果返回的结果(标量或行集)是用于其他TSQL的,我一般 会用函数
5、如果感觉无所谓,那就如2