2
|
TheSoftwareJedi jac · 技术社区 · 16 年前 |
![]() |
1
2
我认为这要视情况而定。 您会发现使用CLR过程会更好
|
![]() |
2
2
开销与交换、封送等无关,除非……您的数据不在数据库中。
编辑:添加更多信息 存储过程很难测试(固有的数据绑定),它们不能提供比动态sql更快的好处,而且实际上也不再安全。也就是说,对于排序和过滤之类的事情,关系数据库比C#更高效。 但是,如果您必须使用存储过程(有时),请尽可能多地使用TSQL。如果需要执行大量的逻辑,而这些逻辑不是基于集合的,那么请中断C#。 有一次我这样做是为了给我的数据库添加一些额外的日期处理。我所在的公司使用5-4-4周到4个月的财务日历。这在SQL中几乎是不可能做到的。所以我就用C#来做这个。 |
![]() |
3
1
这有点像一个宗教问题,但是根据你在做什么,你的模式,以及你用多少记录,可能会有很大的不同。测试确实是了解您的情况的最佳方式。 总的来说,存储的数据会更好地扩展;但对你来说,这可能不是事实,或者这对你来说可能不是一个重要的考虑因素。 |
![]() |
John D · 需要为NULL或NOT NULL的WHERE子句 4 月前 |
![]() |
Marc Guillot · 记录值时忽略冲突 5 月前 |
![]() |
Fachry Dzaky · 正确使用ROW_NUMBER 5 月前 |
![]() |
TriumphTruth · 从满足特定条件的数据集中选择1行 5 月前 |