Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vivi@ne

ASP + XML como banco de dados

Recommended Posts

Boa noite,

 

Tenho um arquivo super extenso em xml e preciso utiliza-lo como banco de dados para pesquisa.

 

Já tentei de várias formas fazer a conexão. O problema é quando entra o ADO e o Recordset. A coisa parou de vez.

 

Alguém sabe como fazer, to começando agora e não faço nem ideia de como continuar...

 

To colocando abaixo uma parte do xml pra vcs terem uma ideia de como o treco é complicado, e depois como eu tava tentando fazer e até agora nada...

 

Parte do xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<cid10 versao="V2007">
	<capitulo numcap="1" codcap="A00-B99" romano="I" inicial="A00" final="B99">
		<nome>Algumas doenças infecciosas e parasitárias</nome>
		<subtitulo>I.   Algumas doenças infecciosas e parasitárias</subtitulo>
		<grupo codgrupo="A00-A09" inicial="A00" final="A09">
			<nome>Doenças infecciosas intestinais</nome>
			<subtitulo>Doenças infecciosas intestinais</subtitulo>
			<categoria codcat="A00">
				<nome>Cólera</nome>
				<subtitulo>A00   Colera</subtitulo>
				<subcategoria codsubcat="A000">
					<nome>Cólera devida a Vibrio cholerae 01, biótipo cholerae</nome>
					<subtitulo>A00.0 Colera dev Vibrio cholerae 01 biot cholerae</subtitulo>
					</subcategoria>
				<subcategoria codsubcat="A001">
					<nome>Cólera devida a Vibrio cholerae 01, biótipo El Tor</nome>
					<subtitulo>A00.1 Colera dev Vibrio cholerae 01 biot El Tor</subtitulo>
					</subcategoria>
				<subcategoria codsubcat="A009">
					<nome>Cólera não especificada</nome>
					<subtitulo>A00.9 Colera NE</subtitulo>
					</subcategoria>
				</categoria>
			[b].... E por aí vai, são 61006 linhas[/b]

Como eu estava tentando fazer:

<%

set xmldoc=server.createobject("MSXML2.DOMDocument.3.0")
xmldoc.load(server.mappath("CID10.xml"))
set rs=server.createobject("adodb.recordset")
rs.open(server.mappath("CID10.xml"))


do until rs.eof
Response.Write "<b>Campo1</b> = " & rs("nome") & "<br>" & _
"<b>Campo2</b> = " & rs("nome50") & "<br>" & _
"<b>Campo3</b> = " & rs("subtitulo")& "<p>"
rs.MoveNext
loop

rs.Close
set rs=nothing
%>

Fico no aguardo, quem puder me ajudar agradeço demais.... To com muita pressa mesmo de terminar isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela atenção Ted k', mas esse script que você passou não faz a coexão com o xml, ele cria e visualiza o que foi criado. Também não estou trabalhando com xsl, tenho um arquivo em DTD que até agora não me ajudou em nada, por isso o descartei.

O que eu preciso é de uma dica de como fazer algo do tipo:

 

server.createobject(CONEXÃO COM O XML)

 

server.createobject(RECORDSET DO XML)

 

... depois da conexão,

 

"SELECT * FROM ARQUIVO XML WHERE CAMPO PESQUISADO LIKE '%"&STRING DE PESQUISA&"%' "

 

CAMPO PESQUISADO NO XML = rs("CAMPO PESQUISADO")

 

Até agora não obtive resultados, porque me retorna o erro

 

ADODB.Recordset error '800a0e7d'

 

The connection cannot be used to perform this operation. It is either closed or invalid in this context.

 

/conex/arearestrita/cid10/testOSP.asp, line 6

 

e o código é:

1 <%
2 
3 set xmldoc=server.createobject("MSXML2.DOMDocument.3.0")
4 xmldoc.load(server.mappath("CID10.xml"))
5 set rs=server.createobject("adodb.recordset")
6 rs.open(server.mappath("CID10.xml"))

 

se alguém souber como fazer agradeço qq colaboração.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.