C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Seasar2のSQLでツリー構造を取得


(過去ログ 112 を表示中)

[トピック内 1 記事 (1 - 1 表示)]  << 0 >>

■66536 / inTopicNo.1)  Seasar2のSQLでツリー構造を取得
  
□投稿者/ まめ (1回)-(2013/05/02(Thu) 14:47:13)

分類:[C#] 

ツリー構造のデータを取得したいと考えております。
SQLSERVER2008
.NetFramework3.5
Seasar2
を使用しています。

実行したいSQLは以下のようなものです。
with Tree(Id, ParentId) as
(
select
Id, ParentId
from T_SYSTEM
where ParentId = /*parentId*/'a'
union all
select
t1.Id, t1.ParentId
from T_SYSTEM t1
join Tree t2 on t2.Id = t1.ParentId
)
select * from Tree;

呼び出しは
IList<SystemDto> FetchTree(string parentId);

上記のSQLをManagementStudioから実行すると取得したいツリーデータが取得できますが
Seaserから実行(FetchTreeを呼び出す)すると
SELECT T_SYSTEM.Id, T_SYSTEM.ParentId FROM T_SYSTEM WHERE T_SYSTEM.parentId = 'xxx'
というSQLが実行されているようで、うまく取得できません。

次に同様のプロシージャを作成してみましたが
http://s2dao.net.seasar.org/ja/dao.html#ProcedureAttr
Procedure属性のDBMS対応にあるように戻り値は単一の数値でないとエラーになるようです。

このようなSQLを実行したい場合どのような設定を行えばよいのでしょうか。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -