从应用程序中获取列表的最有效方法是什么?
问题描述:
有几个备选方案,我意识到:从应用程序中获取列表的最有效方法是什么?
- 分隔文字(如“项目1,项目2”或“项目1:项目2”)
- 需要分割和处理,这本身不支持
- XML片段(例如)
- 招致开销XML处理,这我确信是相当沉重
我想到的另一个问题是,在需要它们进入proc(比紧密耦合更紧密)和某种批量插入之前,实际写下列表项。
另一种方法是将biz层中列表项的逻辑应用于检索到的数据。
我意识到它可能只是一个案例调用,但通常会想知道什么是优先方式。我讨厌含糊不清,但应该拥抱它,现在有一个二分法。
答
对于MSSQL 2008+,最好的方法是表格类型参数,对于2008之前的版本,有许多奇怪的决定 - 从Xml或以逗号分隔的字符串开始,并以呼叫会话和清理的持久表结束。
+0
这会帮助我。谢谢。 – brumScouse 2012-01-12 12:35:34
这是哪个SQL - Oracle,MySQL,SQLServer ...? – 2012-01-12 12:16:30
MSSQL。我认为数据库技术将几乎可以忽略(认为该问题的实现会招聘类似的机制) – brumScouse 2012-01-12 12:22:40
类似的主题:parameter-passing-vs-table-valued -values-vs-xml-to-sql-2008 -from-net-applic – brumScouse 2012-01-12 12:34:49