Tem como criar uma tabela SQL baseada no XML SCHEMA (XSD)?
-
terça-feira, 3 de julho de 2007 21:14
Pessoal, não conheço bem o XML . Porém preciso formatar um arquivo em XML baseada num SCHEMA XSD. Gostaria de saber se consigo criar uma tabela em SQL baseada neste SCHEMA. Se sim, poderia me passar o código?
Apos gravar informações nesta tabela, preciso re-gerar em XML para devolver este arquivo.
Se este não for o melhor procedimento, por favor preciso de uma orientação.
Todas as Respostas
-
quarta-feira, 4 de julho de 2007 12:21
Maria,
Você pode usar o objeto SQLXMLBulkload e configurar o mapeamento dos elementos/atributos do XSD para tabelas/colunas.
Tem um link da Microsoft que ajuda nisso:
http://msdn2.microsoft.com/en-us/library/ms171993(SQL.90).aspx.
qualquer coisa retorne. -
quarta-feira, 4 de julho de 2007 14:43
Robson,
Exatamente o que eu queria, ir direto neste link, pois estava com muitas dificuldades. Fico muito feliz em saber q consigo respostas rápidas. Vou dar uma olhada, e qquer coisa retorno.
-
quarta-feira, 4 de julho de 2007 19:56
Robson,
Ainda não consegui entender o procedimento.
Supõe-se q tenha um schema desta forma:
<xsd
chema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns
ql="urn
chemas-microsoft-com:mapping-schema">
<xsd:element name="ROOT" sql:is-constant="1" >
<xsd:complexType>
<xsd
equence>
<xsd:element name="Customers" sql:relation="Cust" maxOccurs="unbounded">
<xsd:complexType>
<xsd
equence>
<xsd:element name="CustomerID" type="xsd:integer" />
<xsd:element name="CompanyName" type="xsd
tring" />
<xsd:element name="City" type="xsd
tring" />
</xsd
equence>
</xsd:complexType>
</xsd:element>
</xsd
equence>
</xsd:complexType>
</xsd:element>
</xsd
chema>Só tenho o schema acima, mais nada,
preciso criar uma tabela no sql manualmente? Pois na documentação mostra exemplo criando uma tabela manualmente com create table. Depois fala em criar um arquivo xml incluindo dados..
Sendo q oque eu preciso, seria somente criar uma tabela vazia baseada no schema, para depois eu gravar os dados.
-
quinta-feira, 5 de julho de 2007 10:34
Maria,
Deixa eu ver se entendi?
Você deseja utilizar uma table para gerar um schema xsd, ou seja, pegar o conteúdo desta table e gerar um xml para posterior utilização como schema?
-
quinta-feira, 5 de julho de 2007 12:02
O Schema acima é somente um exemplo. Vou explicar melhor, talvez vc já tenha ouvido falar de TISS - Transf.integrada de saude suplementar, pelo site www.ans.gov.br . Eles disponibilizam o schema para q possamos montar um arquivo xml. Estou meio perdida, pois precisava filtrar os dados que estao no bco de dados SQL e montar xml conforme o schema deles. O meu problema é que ainda não encontrei o caminho certo . Achei q pudesse criar uma tabela no sql com estrutura similar ao schema e depois fazer uma exportação para xml.
Se puder me ajudar, agradeço.
-
quinta-feira, 5 de julho de 2007 13:55
Esse select abaixo exporta para um XML formatado como no schema deles.
Code Snippetselect
CustomerID,CompanyName
,City
FROM
CustomersFOR
XML RAW('Customers'), ELEMENTS, ROOT('ROOT')Se esta em mais de uma tabela, me envie o select que eu monto a hierarquia do XML.
Depois vc só envia o XML e pede para eles abrirem de acordo com o schema.
Abraço

