sql-server - SQL Server 2008 CLR 与 T-SQL : Is there an efficiency/speed difference?

标签 sql-server sql-server-2008 tsql clr sqlclr

我是一名 C# 开发人员,曾在 T-SQL 中完成过一些基本的数据库工作。然而,我需要编写一个非常复杂的存储过程,远远超出我的 T-SQL 知识。

作为 SQL Server 2008 的一部分,使用 .net CLR 用 C# 编写存储过程是否会导致存储过程的效率低于用 T-SQL 编写的存储过程?差异(如果有)显着吗?为什么?

最佳答案

CLR 需要一些通信开销(在 CLRSQL Server 之间传递数据)

经验法则是:

  • 如果您的逻辑主要包括大量数据集的转换(可以使用集合操作执行),则使用 TSQL

  • 如果您的逻辑主要包含相对少量数据的复杂计算,请使用 CLR

使用集合操作可以做的事情比看上去的要多得多。如果您在此发布您的要求,我们可能会提供帮助。

关于sql-server - SQL Server 2008 CLR 与 T-SQL : Is there an efficiency/speed difference?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2097958/

相关文章:

sql-server - sql server中的OUTPUT子句有什么用

sql - 在带有 IN 条件的 where 子句中使用 CASE

sql-server - TSQL 查找组中的所有记录是否具有相同的值

sql - 适用于 Oracle 和 SQL Server 的简单 SQL 查询

sql - 如何在集成服务目录中启用创建目录选项?

database - 创建现有数据库的 "skeleton"

sql - 我应该如何确保 mytable 有效

sql-server - SQL 中竖线/竖线字符的含义是什么?

sql-server - 存储过程导致的转换死锁

sql-server - 这些使用 OR 的 T-SQL 查询有什么区别?