FACULDADE DE CIÊNCIAS APLICADAS DE MINAS

Tamanho: px
Começar a partir da página:

Download "FACULDADE DE CIÊNCIAS APLICADAS DE MINAS"

Transcrição

1 UNIÃO EDUCACIONAL MINAS GERAIS S/C LTDA FACULDADE DE CIÊNCIAS APLICADAS DE MINAS Autorizada pela Portaria n 577/2000 MEC, de 03/05/2000. BACHARELADO EM SISTEMAS DE INFORMAÇÃO 1 UTILIZANDO XML PARA A TROCA ELETRÔNICA DE DADOS MARSELHA PARANAIBA SAMORA Uberlândia MG 2008

2 2 MARSELHA PARANAIBA SAMORA UTILIZANDO XML PARA A TROCA ELETRÔNICA DE DADOS Trabalho de final de curso submetido à como parte dos requisitos para a obtenção do grau de Bacharel em Sistemas de Informação. Orientador: Prof. M.Sc. Francisco José Muller. Uberlândia MG 2008

3 3 MARSELHA PARANAIBA SAMORA UTILIZANDO XML PARA A TROCA ELETRÔNICA DE DADOS Banca Examinadora: Trabalho de final de curso submetido à como parte dos requisitos para a obtenção do grau de Bacharel em Sistemas de Informação. Orientador: Prof. MSc. Francisco José Muller Uberlândia, 23 de Abril de Prof. M.Sc. Francisco José Muller Prof. Dr. Mauro Hemerly Gazzani Prof. M.Sc. Sílvio Bacalá Uberlândia MG 2008

4 4 Dedicatória A todos que me incentivaram a concluir mais esta etapa da minha vida. Em especial, aos meus pais, Eduardo e Helenice, e às minhas irmãs, Fernanda e Roberta, que acreditaram que este sonho iria se realizar.

5 5 AGRADECIMENTOS Em primeiro lugar, agradeço a Deus, divino e misericordioso, pelo dom da vida que me deu, pela luz que nunca se apagou, iluminando os meus passos, e por tudo o que não pode ser expresso com palavras. Especialmente, aos meus pais, Eduardo e Helenice, pela vida e pelo exemplo de luta, o meu agradecimento eterno. Agradeço aos meus amigos Lívia, Anderson, Lidiane e Juliano que, nesta caminhada, embarcaram comigo no meu sonho, incentivando e colaborando com os seus conhecimentos e sabedoria. tradução. confiança e dedicação. Ao meu amigo, Paulo, pelo comprometimento e empenho na Ao meu orientador, Prof. MSc. Francisco José Muller, pelo incentivo, A todos que, direta ou indiretamente, contribuíram para a elaboração deste trabalho. Finalmente, aos demais componentes da banca examinadora pelo tempo despendido para a leitura e análise deste trabalho. A todos, muito obrigada.

6 6 RESUMO Para transferir os dados de uma base para outra, pode-se utilizar o EDI (Electronic Data Interchange ou Intercâmbio Eletrônico de Dados), que viabiliza a troca de dados de acordo com um padrão (Febraban, Edifact, Anfavea e outros) préestabelecido entre as partes (remetente e receptor) ou através da replicação de dados, sendo esta uma tecnologia utilizada para multiplicar e duplicar os dados em locais distintos. Este trabalho mostrará outra forma possível para transferência entre base de dados distintos, cuja linguagem utilizada é XML. Essa linguagem utiliza um padrão que se destaca devido a sua estrutura leve, por ser independente de plataforma e, conseqüentemente, possibilitar o desenvolvimento de estruturas flexíveis. Serão apresentadas noções básicas sobre a linguagem XML e sua utilização para mediar a troca de dados entre sistemas legados, já que no meio acadêmico a linguagem XML é pouco difundida. Desta forma, este trabalho servirá como material de apoio para que as pessoas interessadas nesse assunto possam adquirir conhecimento básico sobre a linguagem XML e sua utilização na troca de dados entre sistemas diferentes. PALAVRAS-CHAVE: XML, Banco de Dados, SQL Server 2000.

7 7 ABSTRACT To transfer the data of a base to another we can use the EDI (Electronic Data Interchange), which it makes possible to exchange the data in accordance with a standard system (Febraban, Edifact, Anfavea and others), pre stablished between the parts (sender and reciever) or through the response of data, where this is an utilized technology to multiply and to duplicate the data in distinc places. In the present paper work, it will show another way which it s also possible to transfer data between distinct databases using the following language: XML. XML is a language that uses a standard that highlights due to its light structure, for being independent of its platform and making possible the development of flexible structures. It will be presented basic slight knowledge on language XML and its use to mediate exchange of data between obsolete systems, since this XML language is not spread out among the academic studies. Therefore, this work will serve as a material support to people interested in this issue and they can acquire basic knowledge on XML language and its use in the exchange of data between different systems. KEY WORDS: XML; Database; SQL Server 2000.

8 8 LISTA DE FIGURAS Figura 1 - Exemplo de dados de uma aluna Figura 2 - Estrutura XML...19 Figura 3 - Exemplo de arquivo no formato XML Figura 4 - Exemplo de elemento Figura 5 - Exemplo de atributo Figura 6 - Exemplo de comentário Figura 7 - Exemplo de entidade Figura 8 - Declaração de DTD utilizando ELEMENT Figura 9 - Declaração de DTD utilizando Arquivo Figura 10 - Declaração de DTD utilizando Figura 11 - Declaração de DTD utilizando Figura 12 - Declaração de DTD utilizando Figura 13 - Declaração de DTD utilizando?...27 Figura 14 - Declaração de DTD utilizando * Figura 15 - Cabeçalho esquema Figura 16 - Exemplo ElementType Figura 17 - Exemplo utilizando valor seq Figura 18 - Exemplo utilizando element Figura 19 - Exemplo utilizando Attribute Figura 20 - Sintaxe FOR XML (Bento, Reali, Castro,2002) Figura 21 - Modo AUTO Figura 22 - Modo Auto Figura 23 - Modo RAW Figura 24 - Sintaxe OPENXML Figura 25 - Criando tabela Figura 26 - Inserindo dados na tabela Figura 27 - Mostrando dados da tabela Figura 28 - Exportando dados Figura 29 - Estrutura dos Dados Exportados Figura 30 - Árvore de Dados de Cada Nodo...44 Figura 31 - Processo da Importação Figura 32 - Tabela temporária Figura 33 - Inserindo dados Figura 34 - Finalizando Importação Figura 35 - Resultado da Inserção

9 9 LISTA DE QUADROS Quadro 1 - Característica XML Quadro 2 - Tabela Entidade Quadro 3 - Tabela Atributo Content Quadro 4 - Tabela Atributo dtt:type Quadro 5 - Parâmetros For XML Quadro 6 - Argumentos da Função Open XML Quadro 7 - Valores Flag Quadro 8 - Sintaxe sp.xml prepare documento

10 10 LISTA DE ABREVIATURAS E SÍMBOLOS DTD Document Type Definitions. SQL Server Microsoft SQL Server. EDI Electronic Data Interchange. SGBD Sistema Gerenciador de Banco de Dados. W3C World Wide Web Consortium. SGML Standard Generalized Markup Language. HTML Hypertext Markup Language. XML extensible Markup Language. XSD Schema Definition. CSS - Cascading Style Sheets

11 11 SUMÁRIO 1. INTRODUÇÃO 1.1 Cenário Atual Identificação do Problema Objetivo do Trabalho Objetivo Geral Objetivos Específicos Justificativa para Pesquisa Organização do Trabalho XML 2.1 Introdução Origem da Linguagem XML Definição de XML Estrutura do Documento XML Elementos Atributos Comentários Entidades Declaração de Entidades Document Type Definition (DTD) Declaração de uma DTD XML Schema Sintaxe SISTEMAS DE GERENCIAMENTOS DE BANCO DE DADOS (SGBB) E VISÃO GERAL DE SQL SERVER COM SUPORTE A XML 3.1 Introduçâo Conceito Recuperação Integridade Concorrência Segurança SQL Sever com Suporte ao XML Executando Templates EXPORTAÇÃO E IMPORTÃÇÃO DE DADOS UTILIZANDO SQL SERVER 2000 COM SUPORTE A XML 4.1 Introdução Exportação de Dados Importação de Dados CONCLUSÃO

12 12 1. INTRODUÇÃO 1.1 Cenário Atual Com a abertura de novos mercados e a globalização mundial, as empresas precisam cada vez mais de informações consistentes para se manterem ativas. Porém, nem sempre essas informações encontram-se centralizadas em um único repositório. Diferentes formas para a estruturação dos dados podem não causar problemas enquanto estes são utilizados apenas pelo próprio sistema que os estruturou. Entretanto, quando os dados precisam ser transferidos entre diferentes sistemas, poderão surgir problemas de incompatibilidade devido à linguagem utilizada ou à falta de uma padronização dos dados. Em uma entrevista no lançamento da BizTalk, Bill Gates afirmou que: Para seduzir mais de um milhão de novas empresas para o Comércio Eletrônico, temos que ajudar as suas aplicações a falar a linguagem do negócio de forma homogênea. Até agora, era muito difícil para as empresas fazerem negócio com base na Internet, devido à falta de um vocabulário técnico único para descrever os processos funcionais. (HEITLINGER, 2001) Um dos principais requisitos para a integração entre as aplicações e seus respectivos dados é a existência de um padrão comum que possa ser utilizado pelos diversos sistemas. Serão apresentados os conceitos básicos relativos à linguagem XML, recursos adicionais de formatação e validação de um documento XML utilizando o DTD (Document Type Definitions), definindo suas regras e exemplos de sintaxe. Para exemplificar a utilização do XML será utilizado o banco de dados SQL Server 2000, por possuir suporte a XML que será configurado para trocar dados, importando e exportando arquivo neste formato. A linguagem XML é um padrão que está sendo usado por diversos fabricantes de software para as mais diversas finalidades, dentre os quais: Oracle SQL Server

13 13 MySQL Segundo Abiteboul, Buneman e Suciu (2000), na suposição de que XML se tornará um formato universal de troca de dados, muitos comerciantes de software estão construindo ferramentas para importação e exportação de dados em XML. Desta forma, este trabalho servirá como material de referência para que as pessoas interessadas neste assunto possam adquirir conhecimento básico sobre esta linguagem. Além de servir como material de referência, a pesquisa mostrará que é possível utilizar XML como uma forma padrão de representação e troca de dados nas aplicações para armazenamento, obtendo-se uma estrutura leve, padronizada e independente de plataformas, o que possibilita o desenvolvimento de estruturas de mediação flexíveis. 1.2 Identificação do Problema A troca de dados entre aplicações pode ser realizada de diferentes modos, como a utilização de EDI (Electronic Data Interchange ou Intercâmbio Eletrônico de Dados), que viabiliza a troca de dados de acordo com um padrão (Febraban, Edifact, Anfavea e outros) pré-estabelecido entre as partes (remetente e receptor). O EDI foi definido pela padronização Francesa [Marcillet, 1994], EDIFRANCE, como: transferência de dados de computador para computador, entre parceiros de negócios [Preston, 1988; Hinge,1988], usando mensagens eletrônicas de dados, estruturados e agrupados, na forma de mensagens padrões, desta forma, favorecendo a diminuição de custos, e aumentando a produtividade da companhia, melhorando os procedimentos, e reduzindo custos. Esta é uma nova forma de comunicação entre parceiros econômicos, na qual os documentos em papel não são mais necessários. (MARCONCINI; LIMA, 2007) Outra forma de transferência é a utilização de replicação de dados, sendo esta uma tecnologia utilizada para multiplicar e duplicar os dados em locais distintos. A Replicação de Dados é uma poderosa e importante tecnologia para manipulação e duplicação de cópias, mantendo e sincronizando-as automaticamente em diferentes locais, de forma que todas as cópias existentes no ambiente trabalhem com as mesmas informações. (AFONSO, 2006)

14 14 Este trabalho apresentará para mediar a troca de dados entre aplicações, a linguagem XML, que é simplesmente uma forma de representação de dados que permite uma especificação facilitando a troca de dados entre sistemas diferentes. De acordo com Abiteboul, Buneman e Suciu (2000), XML permite uma especificação que facilita a troca de dados e a reutilização por múltiplas aplicações. A vantagem é que se ganha em tempo por ser uma linguagem intuitiva, simples e de fácil interpretação, sem depender de aplicação ou sistema operacional, podendo realizar uma busca em diferentes bancos de dados e combiná-los conforme necessário. 1.3 Objetivo do Trabalho Objetivo Geral O objetivo deste trabalho é descrever o processo de troca de dados entre aplicações, utilizando a linguagem XML Objetivos Específicos Realizar estudos sobre XML, um breve histórico e conceituá-la; Definir conceitos sobre Banco de Dados; Desenvolver uma visão geral de SQL Server com suporte ao XML; simplificada com o uso do XML; Descrever como a troca de dados entre sistemas pode ser Apresentar um exemplo de importação e exportação dos dados. 1.4 Justificativa para Pesquisa A principal justificativa para a realização deste projeto é apresentar uma linguagem pouco difundida no meio acadêmico para a realização de troca de dados

15 15 entre diferentes aplicações, pois nem sempre o mecanismo utilizado para troca de dados é eficaz e econômico. Ao utilizar documentos no formato XML em substituição aos arquivos gerados por meio de processos como o padrão EDI ou por replicação de dados, as empresas que pretendem aperfeiçoar a comunicação eletrônica terão ganhos significativos, pois no formato XML os documentos ficam mais flexíveis, logo, podem ser utilizados por várias aplicações e manipulados de acordo com a necessidade de cada aplicação para mediar a troca de dados. 1.5 Organização do Trabalho No Capítulo 1 foi apresentada uma introdução à organização de todo o trabalho, citando os objetivos e a justificativa para sua realização em linhas gerais. No capítulo 2 serão mostradas as definições básicas de XML. No capítulo 3, haverá a definição de Sistema Gerenciador de Banco de Dados (SGBD) e uma visão geral do SQL Server com suporte ao XML. Por fim, o capítulo 4 será dividido em duas partes, sendo que a primeira revelará como será feita a exportação dos dados utilizando SQL Server e a segunda parte como será a exportação dos dados no formato XML. Para concluir o trabalho, no capítulo 5 será apresentada a conclusão.

16 16 2. FUNDAMENTOS DA LINGUAGEM XML 2.1 Introdução XML possui um formato universal de metalinguagem, ou seja, uma linguagem que permite definir novas linguagens através da criação customizada de marcadores. Uma linguagem de marcação de texto possui um conjunto de marcadores (conhecidos como tag) que são utilizadas para atribuir determinadas características a uma informação delimitando os dados. Segundo Ramalho (2002), a XML foi criada para descrever dados, e o seu foco está na descrição do dado. Uma das características marcantes por trás dessa linguagem é a possibilidade de manipulação do arquivo texto em diferentes programas e sistemas operacionais, pois seu conteúdo poderá ser feito e visualizado por um simples editor de texto, por exemplo, o bloco de notas do Windows, o que não ocorre com outros tipos de linguagens, que necessitam especificamente de um ambiente próprio para a sua conclusão. Seguem no Quadro 01 algumas características da linguagem XML: Pode armazenar e organizar qualquer tipo de informação. Possui padrão aberto, não sendo amarrado a nenhum aplicativo ou desenvolvedor. Oferece diversas maneiras de verificar a qualidade e integridade do documento, usando regras de sintaxe, verificação de links internos (estrutura), comparação com modelos de documentos e definição de tipos de dados. Formado por uma estrutura simples e não ambígua, o XML é ideal para ser lido e manipulado por pessoas e aplicativos. Pode ser facilmente combinado com folhas de estilo (CSS) para apresentar os dados na estrutura desejada. Quadro 01 Características XML (Agnaldo 2003) A XML visa construir documentos flexíveis que representam dados juntamente com seus respectivos significados, sem considerar o formato de sua

17 17 apresentação. Com a padronização utilizada no documento fica fácil a troca entre banco de dados distintos e principalmente entre os diversos tipos de aplicativos. Com a XML definem-se facilmente linguagens de marcação (Markup Languages). Usar XML é um modo muito flexível de criar dados autodescritíveis e partilhar esses dados via Internet, por Intranets, ou por qualquer outro modo de transporte. (HEITLINGER, 2001). As indústrias de banco de dados já reconheceram o potencial deste novo formato e muitos dos construtores estão expandindo as suas tecnologias com o intuito de propor repositórios para os dados XML, são exemplos: Oracle, IBM, Microsoft e Sybase. Em entrevista concedida à revista Revista Do Linux, diante do questionamento sobre a avaliação da linguagem XML e seus benefícios às empresas, Charles Casanave III afirma entender que: A XML está mudando o mundo da TI e deverá alterar o mundo dos negócios. A XML guiará o sucesso do e-commerce mais do que qualquer outra tecnologia. Ela oferece às empresas meios padronizados de intercâmbio de informações de transações eletrônicas, uma tecnologia padrão com a qual integrar suas aplicações legadas e um ambiente padrão para implementar novas aplicações que podem colaborar com parceiros globais de negócios. (REVISTA DO LINUX, 2008) Dentre as diversas vantagens em utilizar a XML, destacam-se: Não requer licença; Os formatos XML são baseados em texto, os que os tornam mais legíveis, mais fáceis de documentar e, às vezes, mais fáceis de depurar; operacional; Interoperabilidade, independente de aplicação ou sistema Flexibilidade, permitindo que o desenvolvedor possa criar suas próprias estruturas rotuladas para armazenar os dados; criará suas tags específicas. Extensibilidade de acordo com a necessidade, isto é, o usuário 2.2 Origem da Linguagem XML Em 1996, o W3C (World Wide Web Consortium) iniciou um projeto de desenvolvimento de uma linguagem de marcação abrangente, que reunisse a

18 18 flexibilidade do SGML (Standard Generalized Markup Language) com a ampla aceitação do HTML (Hypertext Markup Language), para uso através da internet. Surgiu então a XML, um subconjunto da SGML, extensível como tal, porém de forma muito mais simplificada. O W3C é hospedado pelo Massachusetts Institute of Technology, Laboratory for Computer Science(MIT/LCS), os Estados Unidos; pelo Institut National de Recherche em Informatique et em Automatique (INRIA), na Europa; e pela Universidade de Keio, Campus Shonan Fujisawa, no Japão. Atualmente, ele possui cerca de 50 pessoas trabalhando em tempo integral. (Hoizner, 2001, p.36). O W3C é um grupo composto por organizações (atualmente mais de 400) criado em 1994 para regulamentação dos padrões utilizados na internet, promovendo evolução e assegurando a sua interoperabilidade. O W3C desenvolve tecnologias, denominadas Web Standards (ou Padrões Web) para a criação e a interpretação dos conteúdos para Web. Sites desenvolvidos segundo esses padrões podem ser acessados e visualizados por qualquer pessoa por meio de programas chamados browsers ou navegadores, independentemente da plataforma ou dispositivo utilizado, de maneira rápida e compatível com os novos padrões e tecnologias que surgem com a evolução da internet. 2.3 Definição de XML XML é uma abreviação de extensible Markup Language, cuja tradução é linguagem de marcação extensível. O seu foco exclusivo é o modo como os dados são mostrados e a finalidade é criar dados estruturados, ordenando, filtrando e localizando os dados baseados em um arquivo-texto. Desse modo, a XML é um conjunto de regras existentes em um arquivo no formato de texto contendo dados estruturados, de forma que sejam produzidos arquivos de fácil geração e leitura por parte de qualquer aplicação, sem ambigüidades. A XML é um padrão aberto que permite que dados sejam compartilhados universalmente na Internet através de qualquer plataforma que suporte XML. A XML permite que dados estruturados sejam descritos usando um formato de texto. Estes dados podem ser distribuídos e trocados no Hypertext Transport Protocol (HTTP), que é o protocolo usado na Web. (BENTO, REALI, CASTRO, 2002, p. 573).

19 19 Com isso, evitam-se problemas comuns, como dependência de uma plataforma específica e dificuldades na adequação a diferentes tipos de usuários. A W3C descreve a XML como o formato universal para documentos estruturados e dados na Web. A Figura 01 contém dados de uma aluna, Ana Paula, que tem 25 anos e cursa o 8 período de Sistema de Informação com matrícula número anos Ana Paula Sistema de Informação Matrícula º Período Figura 01 Exemplo de dados de uma aluna Quando verificamos a informação da Figura 01, entendemos que se trata dos dados de uma aluna, Ana Paula, com 25 anos, do curso de Sistema de Informação, cursando o 8º período com matrícula número Mas, para entender o XML é necessário definir a estrutura, como é mostrada na Figura 02: <aluna> <idade> 25 </idade> <nome> Ana Paula </nome> <curso> Sistema de Informação </curso> <matricula> </matricula> <período> 8º </período> </aluna> Figura 02 Estrutura XML Dessa forma, quando o parser (analisador XML) encontrar o elemento <aluna>, o programa saberá que os dados são referentes à aluna. Parser é um componente do processador XML que analisa as marcações XML e determina a estrutura dos dados do documento. Na estruturação é possível descrever várias tags, que são marcadores utilizados para atribuir determinadas características a uma informação. As tags podem ser utilizadas e criadas conforme a necessidade, por exemplo, as tags

20 20 utilizadas na Figura 02, <nome> e <curso>. Já no HTML, as tags que aparecem fazem parte da definição da linguagem. 2.4 Estrutura do Documento XML Os documentos feitos em XML contêm uma estrutura lógica composta por elementos e uma estrutura física composta por entidades, comentários, referências de caracteres e instruções de processamento, todos indicados por marcações explícitas no documento. Qualquer linguagem baseada em XML é composta por um conjunto de tipos de elementos que servem para definir quais documentos são conhecidos como DTDs, que serão apresentados posteriormente. Com a utilização de XML para escrever documentos, os projetistas podem adicionar seus próprios elementos de acordo com a aplicação que está sendo modelada, dando importância ao conteúdo e à estrutura da informação, sem se preocupar com a apresentação. A Figura 03 mostra um exemplo de arquivo XML, contendo dados de um usuário, como nome, e idade. 1 <?xml version="1.0" encoding="iso "?> 2 <cadastro> 3 <usuario> 4 <nome>alexandre</nome> 5 5 <idade>15</idade> 6 </usuario> 7 <usuario> 8 <nome>bruno</nome> 9 10 <idade>16</idade> 11 </usuario> 11 </cadastro> Figura 03 Exemplo de arquivo no formato XML Na linha 1 da Figura 03 é mostrada uma instrução padrão, considerada como prólogo, que sempre deve ser inserida no início de um documento XML. É

21 21 importante ressaltar que, se forem utilizar elementos da língua portuguesa como acento, cedilha, etc, deve-se usar o código: <?xml version="1.0" encoding="iso "?>. Na linha 2 da Figura 03 está o Elemento Principal (root tag), que um documento XML sempre deve ter, sendo que, nesse exemplo, é <cadastro>, denominado elemento raiz. Ele é importante para receber e organizar as demais marcações. Sem ele os dados ficam "soltos" pelo código. Já os elementos <usuarios>, <nome>, < > e <idade> da Figura 03 são secundários de um documento XML, isto é, são campos onde serão armazenados os dados. Logo após os elementos secundários, o elemento principal é fechado. Em todo documento XML é obrigatório o uso de um par de tags para definir o elemento raiz. Pode haver ainda subelementos, os quais são bastante sensíveis, pois não reconhecem tags escritas de forma diferente, principalmente porque as tags devem ter início e término. Portanto, toda tag que abre tem que ser fechada, são sensíveis a letras maiúsculas e minúsculas, sendo necessariamente iguais. 2.5 Elementos Os elementos são as formas mais comuns de marcação em XML e são delimitados pelos sinais de menor (<) e maior (>), envolvendo os dados propriamente ditos, como mostra a Figura <?xml version="1.0" encoding="iso "?> 2. <cadastro> 3. <usuario> 4. <nome>alexandre</nome> <idade>15</idade> 7. </usuario> 8. </cadastro> Figura 04 Exemplo de elemento

22 22 Os elementos são chamados de tag, podendo ser criados de acordo com a necessidade. Não são permitidos espaços entre os elementos e nem entre a barra e o nome do elemento. 2.6 Atributos Os atributos são qualificadores dos elementos e sempre são representados como um par nome-valor, sendo que o valor deve, obrigatoriamente, deve estar entre aspas para que o parser ao passar pelo documento possa interpretar que se trata de um valor atribuindo ao elemento. A Figura 05 mostra um exemplo. Figura 05 Exemplo de Atributo Na Figura 05 a idade é um atributo do elemento aluna, que possui um valor especificado entre aspas. Normalmente os atributos são utilizados para definir propriedades do elemento e não o seu conteúdo. São colocados nas tags de abertura e não de fechamento. Os atributos devem possuir um nome e um valor associado por meio do sinal de igualdade. 2.7 Comentários Os comentários são porções de texto que devem ser ignoradas pelo parser XML. Iniciam sempre com <!-- e terminam com -->, veja na Figura 06.

23 23 <! -- Essa linha não é processada pelo Parser -- > Figura 06 Exemplo de Comentário As linhas de comentário podem aparecer em qualquer parte do documento, mas não podem ser colocadas dentro de valores de atributos ou dentro de tags. 2.8 Entidades As entidades sempre começam com & (e-comercial) e terminam com; (ponto e vírgula). As entidades são "símbolos" que são produzidos pelo parser em caracteres especiais como til, acento, cedilha, etc, como mostra Quadro 02. Símbolo da entidade Resultado < < > > & &apos; & ' " " Quadro 02 Tabela Entidade (Holzner, 2001) Quando se deseja incluir caracteres especiais como por exemplo o sinal de < no documento é necessário especificar no documento pois a simples inserção deste símbolo ocasionaria erro se não especificar como <, pois o documento ao ser processado entenderia como se fosse uma tag, então nesse caso, a simples inserção deste caracter ocasionaria um erro quando da sua interpretação.

24 Declarações de Entidades As declarações de entidades permitem que se associe um nome a qualquer fragmento de um documento XML, que pode conter um texto, parte de uma DTD ou uma referência a um arquivo externo, como uma figura ou qualquer outro tipo de dado binário. É o que mostra a Figura 07. <!ENTITY União Educacional Minas Gerais > Figura 07 Exemplo de Entidade Existem três tipos de entidades: internas, externas e de parâmetro. Uma entidade interna é aquela em que o valor de substituição é armazenado na declaração. Esse tipo de entidade permite a definição de qualquer tipo de abreviatura que será, durante a etapa de processamento, substituída pelo texto informado. Analisando o exemplo da Figura 07, nota-se que é possível utilizar & em qualquer parte do documento, uma vez que este será substituído por União Educacional Minas Gerais. Já as entidades externas permitem a um documento XML fazer referência a arquivos externos, sejam eles textos ou binários. Se o arquivo for do tipo texto, seu conteúdo será inserido no lugar da entidade. Dados binários não são analisados, podem somente ser referenciados em um atributo e são usados para referenciar figuras e outro conteúdo não XML no documento. Por fim, as entidades de parâmetro permitem especificar um tipo genérico de entidade que pode, depois, servir como tipo base para outras entidades. Por exemplo: se for definida uma entidade chamada endereço, que contém nome da rua e número, pode-se especificar um endereço de entrega e um endereço comercial, utilizando-se o endereço anteriormente definido Document Type Definition (DTD) A principal característica da XML é a facilidade que ela oferece para que possamos modelar os dados. Assim, podemos especificar os elementos que o

25 25 documento terá. A modelagem dos dados pode ser feita por declaração de tipo de documento, que em inglês quer dizer DTD (Document Type Definition). Assim afirma Serge, Peter e Dan (2000): Uma definição de tipo de documento (DTD) serve como gramática para o documento XML subjacente e é parte da linguagem XML. A DTD permite que sejam incluídas restrições aos documentos XML, para que depois possam ser verificadas pelo processador, a fim de determinar a validade ou não de um documento, especificar quais elementos ou atributos são permitidos no documento XML e em que local do documento eles podem aparecer Declaração de uma DTD Uma DTD é composta por um conjunto de declarações, as quais podem ser ELEMENT, ATTLIST, ENTITY E NOTATION. Todas as declarações iniciam com <! e terminam com >, conforme exemplifica a Figura 08. <?xml version="1.0" encoding="iso "?> <!ELEMENT cadastro(nome, )> <!ELEMENT nome (#PCDATA)> <!ELEMENT (#PCDATA)> Figura 08 Declaração de DTD utilizando ELEMENT Um ELEMENT define uma tag XML, ou seja, cada declaração ELEMENT define um elemento no documento XML. Já ATTLIST define uma lista de atributos pertencentes a um determinado elemento, ENTITY define uma entidade e NOTATION declara uma notação. Primeiramente é declarado o elemento mãe, que é o cadastro e deve conter os elementos filhos nome e . O elemento filho nome utiliza a palavrachave #PCDATA e o elemento filho , #PCDATA. Após a definição DTD, esse arquivo é salvo com o nome, por exemplo, definir.dtd, para depois ser definido como arquivo XML. Com o arquivo DTD pronto, a indicação de qual DTD um documento segue é feita no início do documento, começando com <--DOCTYPE, como revela a Figura 09.

26 26 <?xml version="1.0" encoding="iso "?> <! Inclusão do documento DTD criado anteriormente--> <!DOCTYPE cadastro SYSTEM "definir.dtd"> <! Montagem do documento XML--> <cadastro> <nome>marselha</nome> </cadastro> Figura 09 Declaração de DTD Utilizando Arquivo Quando se declara uma DTD, pode-se utilizar a barra vertical (" ") para dizer que apenas um dos elementos irá aparecer no documento XML, confira na Figura 10. <!ELEMENT cadastro(nome )> Figura 10 Declaração de DTD Utilizando A utilizada na Figura 10 diz que apenas um dos elementos irá aparecer, ou o elemento nome ou o elemento . Utiliza-se também a vírgula, que serve para ordenar a aparição dos elementos. Veja o exemplo da Figura 11. <!ELEMENT cadastro(nome, )> Figura 11 Declaração de DTD Utilizando, Os dois elementos, nome e , da Figura 11 aparecerão na ordem como estão, ou seja, primeiro vem o elemento nome depois o elemento . Os caracteres utilizados dentro do DTD são: o caractere de adição (+), interrogação (?) e asterisco (*). O caractere "+" (mais) indica que o elemento irá aparecer uma ou mais vezes no documento XML, como mostra a Figura 12. <!ELEMENT cadastro(nome, +)> Figura 12 Declaração de DTD Utilizando +

27 27 Já o caractere? significa que o elemento poderá ou não aparecer no documento XML, ou seja, ele é opcional, conforme está na Figura 13. <!ELEMENT cadastro(nome?, )> Figura 13 Declaração de DTD Utilizando? Finalmente, o * indica que o elemento poderá aparecer nenhuma ou várias vezes no documento XML. Veja a Figura XML Schema Figura 14 Declaração de DTD Utilizando * A XML Schema, também chamada de XML Schema Definition (XSD), é extensível e escrita em XML. Os esquemas tiveram origem na necessidade de se criar regras de formatação e padronização do código XML para poder ser integrado nas tarefas de enviar e receber informações com bases de dados. (CRESPI, 2005) Entre as principais características de XML Schema, são citadas: a) Possibilidade de utilizar valores booleanos, números, datas e horas, URIs, inteiros, números decimais, números reais, intervalos de tempo, etc.; b) Tipos definidos pelos usuários, chamados de Arquétipos. Por exemplo: definir um tipo chamado EndereçoPostal e a partir dele definir dois elementos, EndereçoEnvio e EndereçoCobrança como sendo deste tipo; elementos; c) Agrupamento de atributos, que podem ser aplicados a todos os d) Um modelo de conteúdo em uma DTD pode ser descrito como fechado, considerando-se que ele descreve exatamente o que pode aparecer no conteúdo do elemento. A XML Schema admite duas outras possibilidades: open e refinable. <!ELEMENT cadastro(nome, *)>

28 28 Em um modelo de conteúdo do tipo open, todos os elementos requeridos devem estar presentes, embora não seja considerado um erro se elementos adicionais forem inseridos. Já um modelo de conteúdo refinable admite que elementos adicionais estejam presentes, desde que o esquema defina o que eles são. Em relação à validação de documentos, espera-se testar tanto a validação de modelos de conteúdo quanto a validação de unidades específicas de dados. A primeira testa se a ordem e alinhamento dos elementos estão corretos, enquanto que a segunda verifica se um determinado valor é do tipo correto e está de acordo com as regras de validação daquele tipo. Utilizando-se DTD, somente é possível de ser feito o primeiro tipo de validação Sintaxe na Figura 15. O cabeçalho inicial de um documento XML contendo esquema é mostrado <Schema name="schema" xmlns="urn-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoftcom:datatypes"> Figura 15 Cabeçalho Esquema Na primeira linha de código da Figura 15 é definido o esquema. Ela informa o nome do Schema (name), o atributo xmlns e o atributo xmlns:dt. O único atributo que poderá mudar é o name, ou seja, o nome do schema poderá ser outro, observe na Figura 16. <ElementType name="nome" content="textonly" dt:type="string"/> Figura 16 Exemplo ElementType Com o elemento ElemntType, como mostra a Figura 16, define-se os elementos que farão parte do documento XML. Os atributos usados na Figura 16 e os demais atributos que fazem parte do elemento ElementType são:

29 29 Atributo name: define o nome do elemento, no caso, nome; Atributo content: esse atributo define se o elemento terá texto, elementos, texto com outros elementos, etc. Na Figura 16 o elemento nome poderá apenas conter texto. No Quadro 03 será apresentada uma tabela com outros tipos de atributo content. empty Elemento vazio textonly O elemento poderá conter apenas texto eltonly mixed O elemento poderá conter apenas elementos especificados Poderá conter tanto texto quanto outros elementos Quadro 03 Tabela Atributo Content Atributo dt:type: Define que tipo de dados o elemento irá conter. No exemplo da Figura 16 é utilizado o tipo string. Outros tipos comuns que podem ser usados são mostrados no Quadro 04. boolean char date datetime int number time Valor do tipo booleano Tipo de dados string O tipo de dados será uma data O valor será data e hora Define o tipo de dados como sendo um inteiro O tipo de dados é um número O tipo de dados é em formato de hora Quadro 04 Tabela Atributo dt:type Atributo model: poderá conter dois valores (open e closed). Se o valor do atributo for open, então o elemento poderá conter elementos filhos além dos declarados. Se for closed, o elemento poderá ter elementos filhos declarados explicitamente. Atributo order: esse atributo poderá conter três valores, one, seq ou many. O valor one informa que um determinado elemento terá apenas um elemento filho, enquanto que o valor seq exige que os elementos apareçam na seqüência especificada, como mostra a Figura 17:

30 30 <ElementType name="cadastro" order:"seq"> <element type="nome"/> <element type=" /> <element type="tel"/> </ElementType> <?xml version="1.0"?> <cadastro> <nome>marselha</nome> <tel> </tel> </cadastro> Figura 17 Exemplo utilizando valor seq Já o valor many permite que os elementos apareçam em qualquer ordem ou não apareçam, ou seja, são opcionais. O element define os elementos filhos de outro elemento. Na Figura 18 há um elemento cadastro e dentro dele existem dois elementos filhos (nome e ). Esses dois são definidos por element, conforme a Figura 18. <ElementType name="cadastro"content="eltonly" model="closed"> <element type="nome"/> <element type=" "/> Figura 18 Exemplo utilizando element O attribute é usado para atribuir um atributo a um elemento. Na Figura 19 foi declarado o atributo dinheiro ao elemento pagamento. <Attribute name="dinheiro" dt:type="string"/> <ElementType name="pagamento" content="textonly" dt:type="string"> <description>comentário qualquer</description> comentário. Figura 19 Exemplo Utilizando Attribute O elemento description mostrado na Figura 19 serve para inserir um

31 Sistema de Gerenciamento de Banco de Dados (SGBD) e visão geral de SQL Server com suporte a XML 3.1 Introdução Neste capítulo será descrita uma visão geral sobre Banco de Dados e SQL Server com suporte a XML, já que o XML foi crescendo tanto que surgiu a necessidade de juntá-lo ao Banco de Dados. Primeiro será apresentada uma noção de Banco de Dados e, em seguida, será explicado como este oferece suporte à XML. Para a tomada de decisões dentro de uma empresa, os gerentes precisam buscar informações corretas e organizadas, portanto, a necessidade de se obter um banco de dados é indispensável. Através de Sistema de Banco de Dados pode-se obter o compartilhamento de dados, eliminação de duplicação, redundância e inconsistência controlada e suporte a transações, permitindo integridade e segurança. Tais sistemas precisam incorporar não apenas várias verificações e controles para reduzir a probabilidade de falhas, mas também, e mais significativamente, um extenso conjunto de procedimentos para recuperação de falhas que inevitavelmente irão ocorrer, apesar daquelas verificações e controles. (DATE, 1988, p.1) Neste trabalho será utilizado o Sistema Gerenciador Banco de Dados (SGBD) da Microsoft SQL Server 2000, pois é de fácil compreensão e possui uma estrutura simples. 3.2 Conceitos Bancos de dados (ou bases de dados) são conjuntos de dados com uma estrutura regular que organizam informações. Um banco de dados normalmente agrupa dados utilizados para um mesmo fim. De acordo com Date (1991), um banco de dados é uma coleção de dados operacionais armazenados, usados pelos sistemas de aplicações de uma empresa específica.

32 32 [...] empresa é um termo genérico e conveniente para designar uma organização comercial, cientifica, técnica ou de outra natureza que seja razoavelmente independente. (DATE, 1991, p.10) Um banco de dados é usualmente mantido e acessado por meio de um software conhecido como Sistema de Gerenciamento de Banco de Dados (SGBD). O conceito de Sistema de Gerenciamento de Banco de Dados (SGBD) é o armazenamento completo de descrições de dados, seus relacionamentos e forma de acesso. Ele permite que cada usuário visualize dados de forma diferente provendo um ambiente adequado e eficiente para a recuperação de dados e o desenvolvimento de programas aplicativos. O sistema de banco de dados é basicamente um sistema de manutenção de registros por computador ou seja, um sistema cujo objetivo global é manter as informações e torná-las disponíveis quando solicitadas. (DATE, 1991, p.05) O termo banco de dados deve ser aplicado apenas aos dados, enquanto o termo Sistema Gerenciador de Bancos de Dados deve ser aplicado ao software com a capacidade de manipular bancos de dados de forma geral. 3.3 Recuperação A recuperação dos dados em um sistema de banco de dados consiste em reaver a base completa em um estado que se saiba estar correto, após alguma falha ter ocorrido e ter deixado a base atual incorreta ou, pelo menos, suspeita. As possíveis causas para ter-se que recuperar o banco de dados são erros, como a falha do próprio sistema de banco de dados, por erro de programação em uma aplicação, erro no sistema operacional ou falha no hardware, dentre outros. A recuperação em um sistema de banco de dados significa, essencialmente, recuperar o próprio banco de dados: isto é, restaurar o banco de dados a um estado que se saiba estar correto após alguma falha ter deixado o estudo atual incorreto. (DATE, 1991, p.1) A recuperação se baseia principalmente na proteção dos dados, assegurando que qualquer informação já contida no banco possa ser reconstruída a

33 33 partir de alguma outra informação armazenada redundantemente, em algum outro lugar do sistema. 3.4 Integridade Para obter os benefícios propostos é preciso seguir algumas normas a fim de garantir a integridade dos dados e a normalização fundamental para o sucesso do projeto. O termo integridade é utilizado em contextos de bancos de dados com o significado de precisão; correção ou validade. (DATE, 1991, p. 32) A integridade de uma tabela é conseguida através das Primary Keys ou Uniques, que garantem não ocorrer duplicidade dos dados, e é conhecida como integridade de entidade. Já a integridade referencial baseia-se na relação entre duas tabelas aparecendo a chave Foreign Key, em que a chave primária de uma tabela é inserida em outra. A falta de integridade pode causar falhas possíveis de serem vistas depois de muito tempo, causando transtorno para a correção de lacunas e valores duplicados, inseridos de forma incorreta. 3.5 Concorrência Ocorre quando várias pessoas tentam efetuar mudanças no banco de dados ao mesmo tempo. Por isso, é necessário haver o controle dessa ocorrência, para prevenir que uma pessoa sobrescreva as modificações que outras pessoas realizaram no mesmo registro. Existem duas formas comuns para gerenciar a ocorrência: - Pessimista: As linhas que serão modificadas permanecerão bloqueadas até a liberação para que outra pessoa faça a sua modificação. Um exemplo é o controle de estoque. - Otimista: Feita de acordo com a leitura dos dados, mas somente quando eles estão sendo atualizados.

34 34 O usuário enxerga uma única ação, mas, na realidade, é executado um conjunto de procedimentos pelo Banco de Dados, dependendo de quatro propriedades conhecidas como ACID: - Atomicidade: Todas as ações que compõem a transação devem ser concluídas com sucesso, para que sejam efetivadas (commit). Caso contrário, se acontecer alguma falha, a transação deve ser desfeita (rollback). - Consistência: O status da implementação deve ser feito na íntegra. sem interferência. - Isolamento: Cada transação funciona independente uma da outra, - Durabilidade: Os resultados de uma transação são permanentes, podendo ser desfeitos somente após outra transação. 3.6 Segurança O passo inicial a ser dado é ter certeza de que o banco está totalmente seguro, isto é, todos os processos adotados para o banco de dados devem ser seguros. O primeiro item de segurança é o login, por isso, as senhas devem ser longas e complexas, assegurando que não poderão ser vistas por pessoas erradas, pois serão criptografadas e é difícil reverter esse processo. Além da segurança de senhas, o SQL também possui validação de permissões, contas de usuário e cargos do banco de dados. 3.7 SQL Server com Suporte ao XML A Microsoft, quando do lançamento do SQL Server, afirmou que o gerenciador de banco de dados pode armazenar facilmente XML e recuperar dados no mesmo formato, capacitando a integração aplicação-a-aplicação com maior flexibilidade na Web (SCHIAVANI, 2008). Com tal afirmação, visou a ampliação do aplicativo no mercado corporativo. Para executar query na importação e exportação de arquivos XML, existem 2 tipos de templates: Templates de querys via XPATH;

35 35 Templates de query usando SQL. Neste trabalho será utilizado o template de query usando SQL. Segundo Bento, Reali e Castro (2002), os templates são documentos XML bem-formados que contêm uma ou mais declarações do SQL ou de uma ou mais queries XPath Executando Templates Para executar o template de query não será necessário utilizar Schema, pois através do SQL os dados são recuperados da forma que se deseja. Na recuperação de dados no formato XML, utiliza-se a cláusula FOR XML da declaração SELECT e especifica-se o formato do documento que será retornado. A Figura 20 mostra a sintaxe FOR XML. FOR XML mode [,XMLDATA] [, ELEMENTS] [,BINARY BASE64] Figura 20 Sintaxe FOR XML (Bento, Reali, Castro, 2002) Ao utilizar a cláusula FOR XML é necessário especificar quais parâmetros para a consulta serão utilizados. O Quadro 05 mostra detalhadamente cada parâmetro. Parâmetro Mode XMLDATA ELEMENTS BINARY BASE 64 Descrição Especifica o formato do documento XML que está sendo retornado. Pode ser RAW, AUTO ou EXPLICIT. Especifica que um esquema XML deverá ser retornado. O esquema é incluído no início do documento XML que será retornado. Especifica que as colunas são retornadas como subelementos ao invés de atributos ao elemento da linha. Isto é usado somente no modo AUTO. Especifica que os dados sejam retornados no formato codificado base64 para recuperar dados binários. Quadro 05 Parâmetros FOR XML (Bento, Reali, Castro, 2002)

36 36 Para especificar a hierarquia dos dados, utilizam-se os modos RAW, AUTO e EXPLICIT. No modo AUTO, cada linha que é retornada pela consulta é representada por um elemento XML com o mesmo nome da tabela de origem, como mostra a Figura 21. Select * from DADOS_ALUNA for XML AUTO Resultado: <DADOS_ALUNA matricula="1020" nome="marselha" sobrenome="samora"/> <DADOS_ALUNA matricula="1030" nome="livia" sobrenome="giuliani"/> <DADOS_ALUNA matricula="1040" nome="lidiane" sobrenome="melo"/> Figura 21 Modo AUTO Com o modo AUTO, ainda podemos utilizar ELEMENTS. Para cada registro retornado uma tag com o nome da tabela é aberta e fechada. Dentro dessa tag cada campo da tabela é retornado como uma tag e os valores dela são o conteúdo do campo para aquele registro. Nesse caso, cada coluna é representada por um elemento filho, veja na Figura 22. <DADOS_ALUNA> <matricula>1020</matricula> <nome>marselha</nome> <sobrenome>samora</sobrenome> </DADOS_ALUNA> <DADOS_ALUNA> <matricula>1030</matricula> <nome>livia</nome> <sobrenome>giuliani</sobrenome> </DADOS_ALUNA> <DADOS_ALUNA> <matricula>1040</matricula> <nome>lidiane</nome> <sobrenome>melo</sobrenome> </DADOS_ALUNA> Figura 22 Modo AUTO e ELEMENTS

37 37 Já o modo Raw transforma cada fileira no resultado ajustado em um elemento de XML com a fileira genérica do identificador. Cada valor da coluna que não é NULO é traçado a um atributo do elemento de XML em que o nome do atributo é o mesmo que o nome da coluna. A Figura 23 é um exemplo. TAG ATRIBUTO <row matricula="1020" nome="marselha" sobrenome="samora"/> <row matricula="1030" nome="livia" sobrenome="giuliani"/> <row matricula="1040" nome="lidiane" sobrenome="melo"/> Figura 23 Modo RAW Enfim, utilizando o modo EXPLICIT pode-se controlar por completo como o documento XML será retornado, no entanto, devem-se fornecer mais informações para especificar a estrutura do documento XML. Portanto, para que isso ocorra as consultas SELECT precisam ser escritas num formato conhecido como tabela universal, podendo então ser gerado o XML desejado. O SQL Server fornece a função utilizada no T-SQL para criar documentos XML. De acordo com Bento, Reali e Castro (2002), o OPENXML cria uma visualização de conjuntos de linhas de um documento XML na memória. A sintaxe da função OPENXML é representada como na Figura 24.

38 38 OPENXML(idoc int [in],rowpattern nvarchar[in],[flags byte[in]]) [WITH (SchemaDeclaration TableName)] Figura 24 Sintaxe OPENXML Idoc Rowpattem O Quadro 06 mostra os argumentos da função OPENXML: O manuseio do documento da representação interna de um documento XML criado pelo sp_xml_preparedocumnet. O padrão XPath usado para identificar os nós a serem processados como linhas. Configura o mapeamento que deverá ser usado entre os dados XML e o Flags conjunto de linhas relacional. SchemaDeclaration TableName WITH clause A definição de esquema do formulário. O nome da tabela quando uma declaração de esquema não é usada. Fornece um formato de conjunto de linhas usando tanto um esquema de declaração quanto a especificação uma tabela existente. Se a cláusula opcional WITH não é especificada, os resultados são retornados no formato de tabela destacada. Quadro 06 Argumentos da função OPENXML (Bento, Reali, Castro 2002) No argumento Flag define-se um valor, como mostra o Quadro 07. Valor Descrição 0 Usa o mapeamento default (atributos). 1 Retorna valores de atributos. 2 Retorna valores de elementos. 3 Retorna valores de atributos e elementos. Quadro 07 Valores Flag Para criar uma representação interna de um documento XML a ser analisado sintaticamente é utilizada a store procedure sp_xml_preparedocument,

39 39 que usa o analisador sintático MSXML. Ele retorna um instrumento para acessar a representação do conjunto de linhas do documento, que é armazenada no cachê interno do SQL Server. Se ocorrer sucesso, retorna 0 e se ocorrer erro, retorna > 0. A sintaxe para a store procedure sp_xml_preparedocument é mostrada no Quadro 08. Hdoc Um inteiro que é o instrumento para o documento recém-criado. Xmltext XPath O documento XML como um parâmetro de texto (char, nchar, varchar, text, ntext). Se for NULL, uma representação interna de um documento XML vazio será criada. O namespace que é usado nas expressões XPath no OPENXML. O valor padrão é <root xmlns:mp= urn:schemas-microsoft-com:xml-metaprop >. Quadro 08 Sintaxe sp_xml_preparedocument Assim que terminar de utilizar a store procedure sp_xml_preparedocument, é necessário remover a representação do conjunto de linhas da memória utilizando a store procedure sp_xml_removedocument.

40 40 4. Exportação e Importação de Dados Utilizando SQL Server 2000 com suporte a XML 4.1 Introdução Para que um sistema A desenvolvido em ASP com banco de dados SQL Server possa enviar alguns dados para alimentar um sistema B desenvolvido em outra linguagem de programação e outro tipo de banco de dados, é necessário um padrão para que ambas as aplicações possam entender que tipo de dados está sendo passado. Este trabalho apresenta um material de apoio ao meio acadêmico a fim de proporcionar um conhecimento básico da linguagem XML utilizando a importação e exportação de dados entre sistemas legados. Será apresentado um caso de como são feitas a exportação e importação dos dados utilizando SQL Server 2000, o que, como visto nos capítulos anteriores, oferece suporte integrado a XML, sendo flexível, de alto desempenho e fácil de ser usado tanto por desenvolvedores de Web quanto por programadores de banco de dados. 4.2 Exportação de Dados Para exemplificar a exportação e importação de dados foi criada uma tabela chamada DADOS_ALUNA e os campos pertencentes a esta tabela são matrícula, nome e sobrenome, conforme a Figura 25. Figura 25 Criando tabela

41 41 A inserção de dados na tabela existente se dá com a execução do comando Insert com os determinados valores de cada campo, como mostra a Figura 26. Figura 26 Inserindo dados na tabela Foi utilizado o comando SELECT * para mostrar o conteúdo da tabela DADOS_ALUNA, revelando todos os campos pertencentes à tabela e, para visualizar somente o campo nome, foi utilizado o comando select nome. Veja a Figura 27. Figura 27 Mostrando dados da tabela

42 42 Para a exportação do arquivo no formato XML, será utilizada a cláusula FOR XML do SELECT ao final da instrução. A cláusula FOR XML é uma instrução contida no SQL Server que oferece suporte ao XML. Para selecionar os parâmetros de FOR XML será utilizado o modo AUTO e ELEMENTS para o tipo de pesquisa desejado. Utilizando o modo AUTO cada linha que é retornada pela consulta é representada como um elemento XML com o mesmo nome da tabela de origem e os campos da tabela são retornados como elementos filhos. Para salvar o arquivo em um diretório específico utilizaremos a Stored Procedure estendida xp_cmdshell que permite a execução de comandos do sistema operacional de dentro da Database, como revela a Figura 28. EXEC master..xp_cmdshell 'BCP "SELECT * FROM Northwind..dados_aluna as dados_aluna FOR XML AUTO, ELEMENTS " QUERYOUT C:\SAIDA.XML -S. -T -c' Figura 28 Exportando dados O arquivo que foi gerado na exportação, conforme mostra a Figura 28, foi salvo no diretório C:\ com o nome de SAIDA.XML, onde posteriormente será utilizado para a importação dos dados. A estrutura do arquivo exportado é mostrada na Figura 29.

43 Importação de Dados Figura 29 Estrutura dos Dados Exportados Para realizar a importação dos dados, utiliza-se o banco de dados já existente, dados_aluna, que receberá os dados importados do arquivo SAIDA.XML. A fim de demonstrar posteriormente o resultado inserido, iremos executar truncate table de modo que limpe todos os dados da tabela dados_aluna, porque após a conclusão da importação dos dados será executado um select para mostrar os dados inseridos. A importação dos dados exige que o documento fique armazenado na memória na forma de uma árvore. Essa árvore representa os dados de cada nodo que o SQL Server 2000 terá que interpretar para preparar a linha de leitura. Usa-se a stored procedure sp_xml_preparedocument para fazer o parse do documento XML e transformá-lo em uma estrutura de árvore em memória. A árvore é similar ao DOM, pois só poderão ser processados os documentos que estão válidos e bem formatados. Depois que o documento passa pela stored procedure SP_XML_PREPAREDOCUMENT, o SQL interpreta os dados na forma de uma árvore, veja a Figura 30. <dados_aluna> <matricula>1020</matricula> <nome>lidiane</nome> <sobrenome>melo</sobrenome> </dados_aluna> <dados_aluna> <matricula>1030</matricula> <nome>anderson</nome> <sobrenome>rodrigues</sobrenome> </dados_aluna> <dados_aluna> <matricula>1040</matricula> <nome>patricia</nome> <sobrenome>soares</sobrenome> </dados_aluna> <dados_aluna> <matricula>1050</matricula> <nome>livia</nome> <sobrenome>giuliane</sobrenome> </dados_aluna>

44 44 DADOS_A LUNA MATRICU LA NOME SOBREN OME MARSELH A LIVIA LIDIANE SAMORA GIULIANI MELO Figura 30 Árvore de dados de cada nodo O processo que o documento percorrerá para que seja realizada a importação é mostrado na Figura 31. Figura 31 Processo da Importação (Jerônimo, 2008) O OPENXML vai ler os dados já devidamente formatados, pois ele não interpreta a estrutura de nodos. Por esse motivo usamos o SP_XML_PREPAREDOCUMENT para converter o documento em um padrão que o SQL Server 2000 possa ler e interpretar.

45 45 Ao ser recebido, o documento é processado usando código Transact- SQL. Normalmente, o código Transact-SQL é implementado em forma de uma stored procedure e a string XML é passada como um parâmetro. Como a estrutura de árvore do documento XML é mantida em memória, deve-se usar a stored procedure sp_xml_removedocument para liberar a memória quando essa árvore não for mais necessária. Para fazer a importação, será criada uma tabela temporária com o nome de tmpfilelines para armazenar os dados que serão inseridos. Será utilizado o comando xp_cmdshell para buscar o arquivo no local C:\SAIDA.XML e, em seguida, para mostrar os dados, será executado um select na tabela temporária, assim como na Figura 32. Figura 32 Tabela temporária A fim de continuar a importação será definida a contendo os dados do arquivo SAIDA.XML, que será importado. Quando inicializa a leitura na tabela temporária para armazenar os dados na é executado um CASE para verificar se é a primeira vez que está passando na tabela para inserção (se não, apenas é concatenado os dados). Logo em seguida,

46 46 utilizaremos o comando SET para atribuir o valor à e, por fim, será apagada a tabela temporária, pois não será mais utilizada, como traz a Figura 33. Figura 33 Inserindo dados Na string XML que foi atribuída para a obrigatoriamente deve-se ter uma tag ROOT (neste caso, a tag <ROOT>), pois o parser não identificará um documento válido e informará um erro. Para finalizar a importação será definida a o id interno que representa o XML na memória. Logo em seguida, será feita a preparação do documento. Quando executamos sp_xml_preparedocument (uma System Stored Procedure), o XML é checado e se houver algum tipo de erro o identificador não é criado. A cláusula WITH (que faz parte da função OPENXML()) serve para colocar um tipo de dado do SQL Server nos dados que estão sendo extraídos do XML, como é exemplificado na Figura 34.

47 47 int EXEC 35. Figura 34 Finalizando Importação Para mostrar o resultado será executado o comando select. Veja a Figura arquivo SAIDA.XML. INSERT INTO dados_aluna SELECT * FROM '/ROOT/dados_aluna', 3) WITH ( matricula int, nome varchar(20), sobrenome varchar(20) ) EXEC Figura 35 Resultado da Inserção A Figura 35 mostra os dados da inserção através da importação do

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML 1 1. : Conceitos Básicos 2. Aplicação : XHTML 3. Folhas de Estilo em Cascata 2 é um acrônimo para EXtensible Markup Language é uma linguagem de marcação muito parecida com HTML foi designada para descrever

Leia mais

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

Leia mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 02 AT02 Diversos I 1 Indice ESQUEMAS NO BANCO DE DADOS... 3 CRIANDO SCHEMA... 3 CRIANDO TABELA EM DETERMINADO ESQUEMA... 4 NOÇÕES BÁSICAS SOBRE CRIAÇÃO E MODIFICAÇÃO

Leia mais

GERÊNCIA DE DADOS SEMI ESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

GERÊNCIA DE DADOS SEMI ESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. GERÊNCIA DE DADOS SEMI ESTRUTURADOS -XML Prof. Angelo Augusto Frozza, M.Sc. O QUE É XML? Tecnologia desenvolvida pelo W3C http://www.w3c.org W3C: World Wide Web Consortium consórcio formado por acadêmicos

Leia mais

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza PHP e Banco de Dados progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net PHP e Banco de Dados É praticamente impossível

Leia mais

Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs

Um documento XML possui Unidade lógica - os elementos Usuário inventa as marcas através de DTDs XML Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs Unidade física - as entidades Armazenamento separado dos dados Como toda linguagem de marcação: XML

Leia mais

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O QUE É XML? Tecnologia desenvolvida pelo W3C http://www.w3c.org W3C: World Wide Web Consortium consórcio

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível

Leia mais

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do

Leia mais

BANCO DE DADOS CONCEITOS BÁSICOS

BANCO DE DADOS CONCEITOS BÁSICOS Universidade Federal da Paraíba UFPB Centro de Energias Alternativas e Renováveis - CEAR Departamento de Eng. Elétrica DEE BANCO DE DADOS CONCEITOS BÁSICOS Isaac Maia Pessoa Introdução O que é um BD? Operações

Leia mais

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O QUE É XML? Tecnologia desenvolvida pelo W3C http://www.w3c.org W3C: World Wide Web Consortium consórcio

Leia mais

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org Conectando Bancos de Dados Microsoft Access no BrOffice.org Base fornecido pelo Projeto de Documentação do BrOffice.org Índice 1 Introdução...2 1.1 Versão... 2 1.2 Licenciamento...2 1.3 Mensagem do Projeto

Leia mais

2008.1 SQL. Autor: Renata Viegas

2008.1 SQL. Autor: Renata Viegas SQL Autor: Renata Viegas A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua

Leia mais

XML (extensible Markup Language)

XML (extensible Markup Language) Sumário 1. Introdução a Aplicações Não-Convencionais 2. Revisão de Modelagem Conceitual 3. BD Orientado a Objetos (BDOO) 4. BD Objeto-Relacional (BDOR) 5. BD Temporal (BDT) 6. BD Geográfico (BDG) 7. BD

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP INTEGRAÇÃO COM MYSQL PARTE 1 INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança

Leia mais

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA Mário Meireles Teixeira DEINF-UFMA Motivação extensible Markup Language W3C: World Wide Web Consortium http://www.w3.org 1.0 W3C Recommendation, 10/Fev/1998 (inicial) W3C Recommendation, 04/Fev/2004, 3

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 04 SGBD Sistemas Gerenciadores de Bancos de Dados Prof. MSc. Edilberto Silva edilms@yahoo.com Conceitos Básicos DADOS: são fatos em sua forma primária. Ex: nome do funcionário,

Leia mais

Este relatório tem por objetivo, abordar a sintaxe XML.

Este relatório tem por objetivo, abordar a sintaxe XML. Relatório do GPES Este relatório tem por objetivo, abordar a sintaxe XML. XML Estrutura do documento Um documento XML é uma árvore rotulada onde um nó externo consiste de: [1] Dados de caracteres (uma

Leia mais

SQL Structured Query Language

SQL Structured Query Language Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa

Leia mais

2008.1. A linguagem SQL

2008.1. A linguagem SQL SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão

Leia mais

Introdução. Definição. Validação. Universo XML. Apresentação. Processamento. Prof. Enzo Seraphim. Banco de Dados

Introdução. Definição. Validação. Universo XML. Apresentação. Processamento. Prof. Enzo Seraphim. Banco de Dados Introdução Definição Validação Apresentação Processamento Banco de Dados Universo XML Prof. Enzo Seraphim Popularidade do HTML Extremamente simples Estilo próprio para formatação de documentos Ligações

Leia mais

Faculdade Lourenço Filho - ENADE 2011-1

Faculdade Lourenço Filho - ENADE 2011-1 1. Quando se constrói um banco de dados, define-se o modelo de entidade e relacionamento (MER), que é a representação abstrata das estruturas de dados do banco e seus relacionamentos. Cada entidade pode

Leia mais

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA. Sistema de Gerenciamento Eletrônico de Documentos

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA. Sistema de Gerenciamento Eletrônico de Documentos UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA Sistema de Gerenciamento Eletrônico de Documentos Autor: Evandro Bastos Tavares Orientador: Antônio Claudio Gomez

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

Programação SQL. Introdução

Programação SQL. Introdução Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:

Leia mais

INTRODUÇÃO À LINGUAGEM SQL CRIAÇÃO DE BANCO DE DADOS E OTIMIZAÇÃO DE CONSULTAS

INTRODUÇÃO À LINGUAGEM SQL CRIAÇÃO DE BANCO DE DADOS E OTIMIZAÇÃO DE CONSULTAS Esclarecimento Licenciamento de Uso Este documento é propriedade intelectual 2012 da NRSYSTEM COMÉRCIO E SERVIÇOS DE INFORMÁTICA LTDA-ME, consiste de uma compilação de diversos materiais entre livros,

Leia mais

Introdução ao SQL. O que é SQL?

Introdução ao SQL. O que é SQL? Introdução ao SQL 1 O que é SQL? Inicialmente chamada de Sequel, SQL (Structured Query Language), é a linguagem padrão utilizada para comunicar-se com um banco de dados relacional. A versão original foi

Leia mais

Prof. Carlos Majer Aplicações Corporativas UNICID

Prof. Carlos Majer Aplicações Corporativas UNICID Este material pertence a Carlos A. Majer, Professor da Unidade Curricular: Aplicações Corporativas da Universidade Cidade de São Paulo UNICID Licença de Uso Este trabalho está licenciado sob uma Licença

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) (extensible( Markup Language ) Origens (extensible Markup Language linguagem de marcação extensível) Criada em 1996 pelo W3C (World

Leia mais

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis.

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis. UNISA Universidade de Santo Amaro http://www.unisa.br Material de Estudo Módulo I: Básico Banco de dados SQL Server http://www.unisa-sis.info Junho/2010 Objetivo do Workshop Compartilhar e apresentar

Leia mais

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita: SQL Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional em Ensino de Ciências

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento QUESTÕES DE TI QUESTÃO 16 Considerando-se o número de pontos de função para a estimativa do tamanho de um software, é INCORRETO afirmar que, na contagem de pontos, leva-se em consideração A) as compilações

Leia mais

XHTML 1.0 DTDs e Validação

XHTML 1.0 DTDs e Validação XHTML 1.0 DTDs e Validação PRnet/2012 Ferramentas para Web Design 1 HTML 4.0 X XHTML 1.0 Quais são os três principais componentes ou instrumentos mais utilizados na internet? PRnet/2012 Ferramentas para

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA RESUMO DE AULA CRIAÇÃO E MANIPULAÇÃO DO BANCO DE DADOS

Leia mais

SQL. Histórico BANCO DE DADOS. Conceito. Padrões de SQL (1) Componentes do SQL (1) Padrões de SQL (2) (DDL: CREATE TABLE, CONSTRAINTS)

SQL. Histórico BANCO DE DADOS. Conceito. Padrões de SQL (1) Componentes do SQL (1) Padrões de SQL (2) (DDL: CREATE TABLE, CONSTRAINTS) BANCO DE DADOS SQL (DDL: CREATE TABLE, CONSTRAINTS) Prof. Edson Thizon Histórico Entre 1974 e 1979, o San José Research Laboratory da IBM desenvolveu um SGDB relacional que ficou conhecido como Sistema

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec Guia de Consulta Rápida PHP com XML Juliano Niederauer Terceira Edição Novatec Copyright 2002 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida

Leia mais

SQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL

SQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL BANCO DE DADOS 2 SQL (CREATE TABLE, CONSTRAINTS, DELETE, UPDATE e INSERT) Prof. Edson Thizon SQL SQL ( structured query language ) é uma linguagem comercial de definição e manipulação de banco de dados

Leia mais

SQL DDL. Frederico D. Bortoloti freddb@ltc.ufes.br

SQL DDL. Frederico D. Bortoloti freddb@ltc.ufes.br Banco de Dados I SQL DDL Frederico D. Bortoloti freddb@ltc.ufes.br Introdução Modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de padrão SQL (Structured Query Language)

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução à Banco de Dados. Nathalia Sautchuk Patrício Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem

Leia mais

Sumário Agradecimentos... 19 Sobre.o.autor... 20 Prefácio... 21 Capítulo.1..Bem-vindo.ao.MySQL... 22

Sumário Agradecimentos... 19 Sobre.o.autor... 20 Prefácio... 21 Capítulo.1..Bem-vindo.ao.MySQL... 22 Sumário Agradecimentos... 19 Sobre o autor... 20 Prefácio... 21 Capítulo 1 Bem-vindo ao MySQL... 22 1.1 O que é o MySQL?...22 1.1.1 História do MySQL...23 1.1.2 Licença de uso...23 1.2 Utilizações recomendadas...24

Leia mais

Guia de Consulta Rápida XHTML. Juliano Niederauer. Novatec Editora. www.novateceditora.com.br

Guia de Consulta Rápida XHTML. Juliano Niederauer. Novatec Editora. www.novateceditora.com.br Guia de Consulta Rápida XHTML Juliano Niederauer Novatec Editora www.novateceditora.com.br Guia de Consulta Rápida XHTML de Juliano Niederauer Copyright 2002 da Novatec Editora Ltda. Todos os direitos

Leia mais

Linguagem SQL Parte I

Linguagem SQL Parte I FIB - Centro Universitário da Bahia Banco de Dados Linguagem SQL Parte I Francisco Rodrigues Santos chicowebmail@yahoo.com.br Slides gentilmente cedidos por André Vinicius R. P. Nascimento Conteúdo A Linguagem

Leia mais

GERÊNCIA DE DADOS SEMIESTRUTURADOS -DTD. Prof. Angelo Augusto Frozza, M.Sc. http://www.about.me/tilfrozza

GERÊNCIA DE DADOS SEMIESTRUTURADOS -DTD. Prof. Angelo Augusto Frozza, M.Sc. http://www.about.me/tilfrozza GERÊNCIA DE DADOS SEMIESTRUTURADOS -DTD Prof. Angelo Augusto Frozza, M.Sc. http://www.about.me/tilfrozza ROTEIRO Introdução ao DTD Elementos Atributos Entidades Validando um documento XML DTD (DOCUMENT

Leia mais

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável. SQL (Structured Query Language) SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável. Além de permitir a realização de consultas, SQL possibilita: definição

Leia mais

Descrição Tinyint[(M)] Inteiro pequeno. Varia de 128 até +127

Descrição Tinyint[(M)] Inteiro pequeno. Varia de 128 até +127 Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com.

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com. IntroduçãoàTecnologiaWeb FerramentaseTecnologiasde DesenvolvimentoWeb ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br FerramentaseTecnologiasde DesenvolvimentoWeb

Leia mais

Desenvolvimento Web Introdução a XHTML. Prof. Bruno Gomes

Desenvolvimento Web Introdução a XHTML. Prof. Bruno Gomes Desenvolvimento Web Introdução a XHTML Prof. Bruno Gomes 2014 Introdução HTML e XHTML Estrutura básica do documento DTDs Validação do documento Exercícios HTML e XHTML HTML (Hipertext Markup Language)

Leia mais

Guia de Consulta Rápida XML. Otávio C. Décio. Novatec Editora

Guia de Consulta Rápida XML. Otávio C. Décio. Novatec Editora Guia de Consulta Rápida XML Otávio C. Décio Novatec Editora Guia de Consulta Rápida XML de Otávio C. Décio Copyright@2000 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610

Leia mais

Banco de Dados I. Introdução Conceitos

Banco de Dados I. Introdução Conceitos Banco de Dados I Introdução Conceitos Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Conceitos Fundamentais de Banco de Dados; Características

Leia mais

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 2 Computação em Nuvem Desafios e Oportunidades A Computação em Nuvem

Leia mais

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade

Leia mais

SQL. Jacir de Oliveira, José Alencar Philereno. Faculdade de Informática de Taquara. Igrejinha - RS Brazil

SQL. Jacir de Oliveira, José Alencar Philereno. Faculdade de Informática de Taquara. Igrejinha - RS Brazil SQL Jacir de Oliveira, José Alencar Philereno Faculdade de Informática de Taquara Igrejinha - RS Brazil jacirdeoliveira@faccat.br, alencar@philler.com.br Resumo. Este artigo irá descrever a linguagem de

Leia mais

ROTEIRO. A Linguagem SQL (I parte) CEFET.PHB - PI Prof. Jefferson Silva. As partes da linguagem SQL. A Linguagem de Definição de Dados (SQL-DDL)

ROTEIRO. A Linguagem SQL (I parte) CEFET.PHB - PI Prof. Jefferson Silva. As partes da linguagem SQL. A Linguagem de Definição de Dados (SQL-DDL) CEFET.PHB - PI Prof. Jefferson Silva SQL (MySql) ROTEIRO I PARTE - INTRODUÇÃO AO SQL COMANDOS E SUAS PARTES DA LINGUAGEM SQL II PARTE ADMINSTRAÇÃO DE BANCO DE DADOS UTILIZANDO MYSQL PRINCIPAIS INSTRUÇÕES

Leia mais

L A C Laboratory for Advanced Collaboration

L A C Laboratory for Advanced Collaboration Publicação de Dados Governamentais no Padrão Linked Data 2.1 Conceitos Básicos Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo 1.Discutir

Leia mais

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS CLAUDIO RIBEIRO DA SILVA MARÇO 1997 2 1 - CONCEITOS GERAIS DE 1.1 - Conceitos Banco de Dados - Representa

Leia mais

M a n u a l d o R e c u r s o Q m o n i t o r

M a n u a l d o R e c u r s o Q m o n i t o r M a n u a l d o R e c u r s o Q m o n i t o r i t i l advanced Todos os direitos reservados à Constat. Uso autorizado mediante licenciamento Qualitor Porto Alegre RS Av. Ceará, 1652 São João 90240-512

Leia mais

O que é XML? A Linguagem de Marcação Extensível (Extensible Markup Language - XML) é:

O que é XML? A Linguagem de Marcação Extensível (Extensible Markup Language - XML) é: 1.264 Aula 13 XML O que é XML? A Linguagem de Marcação Extensível (Extensible Markup Language - XML) é: Uma recomendação proposta pelo World Wide Web Consortium (W3C) Um formato de arquivo Documentos eletrônicos

Leia mais

Núcleo de Pós Graduação Pitágoras

Núcleo de Pós Graduação Pitágoras Núcleo de Pós Graduação Pitágoras Professor: Fernando Zaidan Disciplina: Modelagem e Projeto de Banco de Dados Especialização em Tecnologia da Informação - Ênfases Março- 2009 1 Modelo Físico Introdução

Leia mais

WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL

WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL 232 - Encontro Anual de Tecnologia da Informação WXDC: Uma Ferramenta para Imposição e Validação de Restrições de Integridade baseadas na Linguagem XDCL Stevan D. Costa1, Alexandre T. Lazzaretti1, Anubis

Leia mais

Sumário. HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1

Sumário. HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1 Sumário HTML CSS JQuery Referências IHC AULA 6 5-09-2011 1 Linguagem HTML HTML é a abreviação de HyperText Markup Language, que pode ser traduzido como Linguagem de Marcação de Hipertexto. Não é uma linguagem

Leia mais

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5 Para entender bancos de dados, é útil ter em mente que os elementos de dados que os compõem são divididos em níveis hierárquicos. Esses elementos de dados lógicos constituem os conceitos de dados básicos

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados O modelo relacional Marta Mattoso Sumário Introdução Motivação Serviços de um SGBD O Modelo Relacional As aplicações não convencionais O Modelo Orientado a Objetos Considerações

Leia mais

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br 1. Abordagem geral Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br Em primeiro plano, deve-se escolher com qual banco de dados iremos trabalhar. Cada banco possui suas vantagens,

Leia mais

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix Ingress SQL

Leia mais

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso):

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso): TRANSAÇÕES 1. Visão Geral Uma transação é uma unidade lógica de trabalho (processamento) formada por um conjunto de comandos SQL cujo objetivo é preservar a integridade e a consistência dos dados. Ao final

Leia mais

Desenvolvimento em Ambiente Web. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Desenvolvimento em Ambiente Web. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Desenvolvimento em Ambiente Web Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com No início A Web é criada em 1989, para ser um padrão de publicação e distribuição de textos científicos e acadêmicos.

Leia mais

Fundamentos do Sistema Gerenciador de Banco de Dados

Fundamentos do Sistema Gerenciador de Banco de Dados Fundamentos do Sistema Gerenciador de Banco de Dados Cláudio Luís V. Oliveira Janeiro de 2010 Definição "Um sistema cujo objetivo principal é gerenciar o acesso, a correta manutenção e a integridade dos

Leia mais

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD Introdução 1. CONCEITOS BÁSICOS DE BD, SBD E SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.

Leia mais

Principal: construir uma base de dados para produção de informações sobre internações hospitalares;

Principal: construir uma base de dados para produção de informações sobre internações hospitalares; Principal: construir uma base de dados para produção de informações sobre internações hospitalares; Específicos: - criar um banco de dados para armazenar registros sobre internações hospitalares; - produzir

Leia mais

SQL comando SELECT. SELECT [DISTINCT] FROM [condição] [ ; ] Paulo Damico - MDK Informática Ltda.

SQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda. SQL comando SELECT Uma das tarefas mais requisitadas em qualquer banco de dados é obter uma listagem de registros armazenados. Estas tarefas são executadas pelo comando SELECT Sintaxe: SELECT [DISTINCT]

Leia mais

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix

Leia mais

Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico

Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico Editora Carlos A. J. Oliviero Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico Orientado por Projeto 1a Edição 2 Reimpressão São Paulo 2011 Érica Ltda. Noções Livrarse Preparação muitas muita Sumário

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Integração de Dados Plataforma Hub Magento E-Commerce

Integração de Dados Plataforma Hub Magento E-Commerce Integração de Dados Plataforma Hub Magento E-Commerce Facilitando Negócios Conectando softwares com Magento Plataforma de E-Commerce Integração de Dados Plataforma Hub Magento E-Commerce Este documento

Leia mais

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela Certamente você já ouviu falar muito sobre triggers. Mas o quê são triggers? Quando e como utilizá-las?

Leia mais

Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01

Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01 Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01 1 1- Bancos de dados compreendem desde agendas telefônicas até sistemas computadorizados. (Sim) 2- Só podemos instalar o SQL Server Express se tivermos

Leia mais

Desenvolvendo com XML

Desenvolvendo com XML José Antônio da Cunha IFRN Disciplina:ADM Banco de Dados Desenvolvendo com XML Tópicos: O tipo de dados XML O suporte XQuery Os métodos Data Type XML Índices XML Usando a cláusula For XML OPENXML XML Bulk

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco de Dados. Maurício Edgar Stivanello Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado

Leia mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 03 AT03 Diversos II Page 1 of 25 Indice EXEMPLOS COM GROUP BY E COM A CLÁUSULA HAVING - TOTALIZANDO DADOS... 3 GROUP BY... 3 Cláusula HAVING com GROUP BY... 5 ENTENDENDO

Leia mais

Histórico de revisões

Histórico de revisões Histórico de revisões Data Versão Descrição Autor 13/11/2009 1.0 Criação da primeira versão HEngholmJr CONTEÚDO Passos para a instalação do SQL Server O MS SQL Server Conceitos relacionais Bancos de dados

Leia mais

DDL, Lidando com as diferenças das instruções SQL nos diferentes SGBD s

DDL, Lidando com as diferenças das instruções SQL nos diferentes SGBD s DDL, Lidando com as diferenças das instruções SQL nos diferentes SGBD s Dio Rafael Jacobs 1, Juliano Varella de Carvalho 1 1 Centro Universitário Feevale Instituto de Ciência Exatas e Tecnológicas Novo

Leia mais

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011 XML Básico Murillo Vasconcelos Henriques B. Castro 17 de maio de 2011 O QUE É? Sigla para extensible Markable Language É uma linguagem de marcação, assim como HTML Desenvolvida para ser auto explicativa

Leia mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Introdução à Engenharia da Computação. Banco de Dados Professor Machado Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:

Leia mais

Justificativa do uso da Linguagem XML no Projeto RIVED

Justificativa do uso da Linguagem XML no Projeto RIVED Justificativa do uso da Linguagem XML no Projeto RIVED Índice Introdução... 1 Sobre a linguagem XML... 2 O que é XML (extensible Markup Language)?... 2 Características da Linguagem...3 Sobre o seu uso...

Leia mais

Linguagem SQL (Parte I)

Linguagem SQL (Parte I) Universidade Federal de Sergipe Departamento de Sistemas de Informação Itatech Group Jr Softwares Itabaiana Site: www.itatechjr.com.br E-mail: contato@itatechjr.com.br Linguagem SQL (Parte I) Introdução

Leia mais

Ambientes Visuais. Ambientes Visuais

Ambientes Visuais. Ambientes Visuais Ambientes Visuais Inicialmente, apenas especialistas utilizavam os computadores, sendo que os primeiros desenvolvidos ocupavam grandes áreas e tinham um poder de processamento reduzido. Porém, a contínua

Leia mais

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011

Leia mais

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL Carga horária: 32 Horas Pré-requisito: Para que os alunos possam aproveitar este treinamento ao máximo, é importante que eles tenham participado dos treinamentos

Leia mais

Sintaxe XML. César Vittori cvittori@inf.ufrgs.br. Outubro de 2000. Resumo Introdução à sintaxe XML. Marcação tradicional x marcação de documentos

Sintaxe XML. César Vittori cvittori@inf.ufrgs.br. Outubro de 2000. Resumo Introdução à sintaxe XML. Marcação tradicional x marcação de documentos Sintaxe XML César Vittori cvittori@inf.ufrgs.br Outubro de 2000 Resumo Introdução à sintaxe XML. Marcação tradicional x marcação de documentos XML. Sintaxe XML Marcação de documentos eletrônicos XML é

Leia mais