가상 디렉터리와 하위 디렉터리의 모든 파일을 나열하려고합니다. 부하 직원이있는 직원 일 수 있습니다. 파일 시스템이 아닙니다. 어쩌면 재귀 저장 프로 시저가 대답이 아닐 수도 있습니다.SQL Server 재귀 저장 프로 시저
시나리오 :
는- 디렉토리 테이블 :
DirId, ParentId
- 파일 테이블 :
FileId, DirId
ParentId
상위 디렉토리와 루트 디렉토리 parentId = NULL
을 가지고는 ... 그것은 자기 설명 생각합니다.
이제 문제는 ... 디렉토리와 하위 디렉토리에있는 목록 파일을 원합니다. 내가 저장 프로 시저를 작성하는 것과 하나의 디렉토리를 들어
:
SELECT * FROM Files Where DirId = ????
그래서 하위 디렉토리를 포함하는 저장 프로 시저를 만들 얼마나? 지금은 C# 코드를 사용하고 각 디렉토리를 반복합니다. 저장 프로 시저를 사용하는 것을 선호합니다 ... 제가 틀렸다는 것을 증명하지 않는 한.
같은 [재귀 CTE 쿼리]를 고려하여 (http://msdn.microsoft.com/en-us/library/ms186243.aspx) 아마도. –
SQL Server를 통해 파일 시스템에 액세스 하시겠습니까 ??? 이것은 훨씬 쉽고 응용 프로그램 코드를 통해 더 잘 수행됩니다. SQL에서 그렇게함으로써 어떤 문제가 해결되는지 설명해 주시겠습니까? – Oded
왜 C#과 같은 코드에서 수행하는 것이 더 적합한 작업에 저장 프로 시저를 사용 하시겠습니까? –