存储过程中的表值参数有哪些缺点?

发布于 2024-11-30 10:33:07 字数 218 浏览 4 评论 0原文

我使用过各种版本的 MS SQL Server,包括 2000、2005、2008、R2、(某些)Denali。我从来没有对像存储过程中的表值参数这样的新功能如此兴奋。我也进行 C# 开发,并且正在挖掘 TVP,我使用它来最大限度地减少前端应用程序的数据库调用数量。

现在我真正的问题是使用表值参数有什么缺点。这简直好得令人难以置信。

请分享您的想法。另外我不想太深入地使用它并且必须改变。

I have worked with various versions of MS SQL Server including 2000,2005,2008,R2,(Some)Denali. I have never been so excited about a new feature like the Table Valued parameters in stored proc. I do C# development as well and I'm digging TVP, I use it to minimize the number of database calls from my front end app.

Now my real question is what are the downsides to using Table Valued Parameters. Its almost too good to be true.

Please share your thoughts. Plus I dont want to get too deep into using it and have to change.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

合约呢 2024-12-07 10:33:07

表值参数几乎没有实际缺点。

优点

  • 频繁使用时进行缓存
  • 非常有效地促进批量插入
  • 减少到服务器的往返

缺点

  • SQL Server 不维护 TVP 列的统计信息
  • 只读
  • 不能用作目标“Select Into”或“Ins​​ert Exec”语句
  • 仅适用于 Sql Server 2008 及更高版本

参考

Table Value Parameters have few practical drawbacks.

Benefits

  • Cached upon frequent use
  • Facilitate bulk inserts very efficiently
  • Reduce round trips to the server

Drawbacks:

  • SQL Server does not maintain statistics on the TVP Columns
  • Readonly
  • Can not be used as the target of "Select Into" or "Insert Exec" statements
  • Only available on Sql Server 2008 and above

References

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文