日期:2014-05-17  浏览次数:20501 次

怎么传一个大的集合到存储过程里?
在程序里有一个实体类的集合,比如 List<student> sList
这个 sList 里面有N个学生的资料。
我现在想把这个 sList作为一个参数传到一个存储过程里,然后再进行相关的操作。该怎么操作?


------解决方案--------------------
把slist 的資料拼接成字符串 ,傳到存儲過程
------解决方案--------------------
引用:
在程序里有一个实体类的集合,比如 List<student> sList
这个 sList 里面有N个学生的资料。
我现在想把这个 sList作为一个参数传到一个存储过程里,然后再进行相关的操作。该怎么操作?


是什么2000,还是2008的sql server
------解决方案--------------------
引用:
把slist 的資料拼接成字符串 ,傳到存儲過程


呵呵,这个是好办法。

先拼接成一个字符串,通过一个特定的分隔符来分隔每个字段,分隔每条记录,然后在存储过程中,再进行分解成一条条的记录。
------解决方案--------------------
通过函数把字符串拆成一个“表”,以表变量形式传进去存储过程
------解决方案--------------------
引用:
在程序里有一个实体类的集合,比如 List<student> sList
这个 sList 里面有N个学生的资料。
我现在想把这个 sList作为一个参数传到一个存储过程里,然后再进行相关的操作。该怎么操作?


如果用的是2008,可以考虑把数据插入到一个临时表,然后把这个临时表作为参数,传到存储过程中的:

有趣的自定义类型:表
http://blog.csdn.net/sqlserverdiscovery/article/details/10384985
------解决方案--------------------
直接生產臨時表,在存儲過程中調用這個臨時表就行了