XML SQL 구문을 쿼리하기위한 프레임 워크가 있습니까? 저는 노드 목록을 반복적으로 반복해야합니다. SQL과 같은 XML 쿼리?
XML이 관계형 데이터베이스가 아니기 때문에이 단순한 희망적인 생각 (바보가 아닌 경우)이 가능하지 않을까요?
XML SQL 구문을 쿼리하기위한 프레임 워크가 있습니까? 저는 노드 목록을 반복적으로 반복해야합니다. SQL과 같은 XML 쿼리?
XQuery 및 XPath ... SQL 구조가 바람직한 경우 XQuery가 더 많이 필요합니다.
.Net Framework에서는이 작업을 수행하는 데 LINQ를 제공하며 .Net System.Data 네임 스페이스를 사용하여 XML 파일에서 데이터를로드 할 수 있습니다.
당신도 등을 예를 들어
이이 테이블 사이에 조인 쿼리를 만들 수는 System.Data.DataTable는 ReadXml()
방법을 제공한다.
LINQ to XML을 사용해 볼 수도 있지만 언어에 구애받지 않습니다.
도 내가 믿는 SQL입니까? – Meff
LINQ 부분은 .net이므로 CLR 컴파일러에서 모든 언어를 사용할 수 있습니다. –
SQL Server 2005는 데이터 형식이 xml
인 XML DML을 지원합니다.
해결할 문제에 따라 다릅니다. XML 파일이 꽤 클 경우 노드별로 파일 노드를 탐색하기 위해 SAX 파서와 같은 것을 사용해야하는 경우가 있습니다. 그렇지 않으면 OutOfMemoryException이 발생하거나 컴퓨터의 가상 메모리가 부족합니다.
그러나 XML 파일의 예상 크기가 상대적으로 작은 경우, 당신은 단순히보기, Linq는 같은 것을 사용하여 내 answer - 여기에 내가 설명하려고 수율 반환 등의 구조물에 훨씬 더 쉽게 노드를 통과하게하는 방법.
방금 비슷한 문제가 발생했습니다. MSXML6에서 300MB XML 파일을 읽고 위쪽으로 Gig의 RAM을 사용하고 있습니다. 다행스럽게도이 방법은 win2k에서 효과적이었고 매우 작은 페이지 파일이있는 VM에 대해서만 몇 가지 문제가있었습니다. 수익률은 수익률에는 영향을 미칠 것이라고 생각하지만, 불행히도 저는 모든 .NET hotness에 대해 Delphi 프로그래머이자 SOL입니다. –
멋진 XPath를 PHP의 simpleXML로 구현했기 때문에 XPath를 사용하지 않았습니다. XQuery를 놓친 것 같습니다. –
Xquery는 XPath를 구현하지만 악마의 작업입니다. – Tarski