Structured Query Language: diferenças entre revisões
Sem resumo de edição |
Sem resumo de edição |
||
Linha 30: | Linha 30: | ||
De seguida, é possível observar três tabelas que representam uma entidade/pessoa e servem para armazenar informação. A tabela Médico guarda informação como: o código (chave primária), o nome, a idade, a especialidade e a sua cidade. A tabela Paciente tem o número de utente, o nome, a idade, a cidade e a doença pela qual se deslocou ao hospital. Já na tabela Consulta pode-se visualizar a relação existente entre estas duas entidades: o Médico e o Paciente tendo, como chaves estrangeiras o código do médico e o número do paciente. Além disso, contêm ainda a data e hora da consulta, a sala onde se realizou e a doença diagnosticada ao paciente. | De seguida, é possível observar três tabelas que representam uma entidade/pessoa e servem para armazenar informação. A tabela Médico guarda informação como: o código (chave primária), o nome, a idade, a especialidade e a sua cidade. A tabela Paciente tem o número de utente, o nome, a idade, a cidade e a doença pela qual se deslocou ao hospital. Já na tabela Consulta pode-se visualizar a relação existente entre estas duas entidades: o Médico e o Paciente tendo, como chaves estrangeiras o código do médico e o número do paciente. Além disso, contêm ainda a data e hora da consulta, a sala onde se realizou e a doença diagnosticada ao paciente. | ||
{| class="wikitable" | {| class="wikitable" style="width:100%; | ||
! Código | ! Código | ||
! Nome | ! Nome | ||
Linha 63: | Linha 63: | ||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" style="width:100%; | ||
! Nº de Utente | ! Nº de Utente | ||
! Nome | ! Nome | ||
Linha 86: | Linha 86: | ||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" style="width:100%; | ||
! CodMedico | ! CodMedico | ||
! NumPaciente | ! NumPaciente |
Revisão das 15h16min de 3 de abril de 2017
Structured Query Language | |
---|---|
Sigla | SQL |
Aplicações | Armazenar, consultar, alterar informação de uma base de dados |
Conceitos relacionados | Bases de Dados, Manipulação de Dados |
Introdução
A sigla SQL denomina Structured Query Language ou, em português, Linguagem de Consulta Estruturada é uma linguagem para interação com Bases de Dados Relacionais. Não constitui uma linguagem completa para o desenvolvimento de aplicações sendo a sua principal função a de suportar a definição, manipulação e controlo dos dados numa base de dados [1]. É uma linguagem de alto nível pois, apenas se tem que dizer ao sistema o que fazer e não como, nem onde o tem de realizar.
Base de Dados
De uma forma muito simplista, pode-se afirmar que uma base de dados consiste numa coleção de dados estruturados, organizados e armazenados de forma persistente sendo que é necessário que os dados tenham algum tipo de significado e organização [2]. O Sistema Gestor de Bases de Dados (SGBD) é uma aplicação informática que fornece a interface entre os dados que são armazenados fisicamente na base de dados e o utilizador. É o SGBD que vai fornecer o conjunto completo de serviços para acesso à informação da base de dados utilizando, para isso, uma linguagem que permita a realização dessas operações: o SQL [3]. Nem todos os sistemas que gerem as bases de dados usam a linguagem SQL. No entanto, o SQL é usado na grande maioria dos sistemas atualmente disponíveis e naqueles que adotam o modelo relacional [2]. Este modelo, de uma forma resumida, baseia-se no princípio em que todos os dados estão guardados em tabelas tendo em conta as relações entre os atributos. Toda a sua definição é teórica e baseada na lógica de predicados e na teoria dos conjuntos cobrindo os três aspetos que qualquer SGBD deveria cobrir relativamente aos dados: estrutura, integridade e manipulação [1][2][3].
Para descrever os dados e as suas estruturas numa base de dados relacional usam-se os seguintes termos/conceitos (Fig. 1) [1] [4]:
- Tabela (ou Relação): Conjunto de linhas do mesmo tipo, onde não existem linhas repetidas nem significado na ordem das linhas da tabela.
- Coluna (ou Atributo): Identificada por um nome e com um único valor por linha sendo que é constituída por um conjunto de dados do mesmo tipo.
- Linha (ou Tuplo): Conjunto de valores válidos, tal que cada linha tem um valor para cada coluna, e onde todas as linhas de uma tabela têm as mesmas colunas.
- Campo: Correspondem a uma informação de uma tabela. Os campos devem ser designados como um determinado tipo de dados, seja texto, data ou hora, número,…
- Chave Primária (PK): É a identificação de uma ou várias colunas de uma tabela. O valor da chave primária identifica unicamente uma linha de uma tabela.
- Chave Estrangeira (FK): É uma ou mais colunas na tabela tal que os seus valores são valores da chave primária de outra.
Após o entendimento dos conceitos principais de uma base de dados, é agora possível a compreensão das operações que podem ser realizadas com recurso a SQL.
De seguida, é possível observar três tabelas que representam uma entidade/pessoa e servem para armazenar informação. A tabela Médico guarda informação como: o código (chave primária), o nome, a idade, a especialidade e a sua cidade. A tabela Paciente tem o número de utente, o nome, a idade, a cidade e a doença pela qual se deslocou ao hospital. Já na tabela Consulta pode-se visualizar a relação existente entre estas duas entidades: o Médico e o Paciente tendo, como chaves estrangeiras o código do médico e o número do paciente. Além disso, contêm ainda a data e hora da consulta, a sala onde se realizou e a doença diagnosticada ao paciente.
Código | Nome | Idade | Especialidade | Cidade |
---|---|---|---|---|
12687871 | Alberto Caiero | 36 | Ortopedia | Braga |
14372844 | Bernardo Soares | 36 | Oncologia | Lisboa |
14429875 | Ricardo Reis | 51 | Cardiologia | Porto |
16918243 | Álvaro de Campos | 48 | Pediatria | Lisboa |
Nº de Utente | Nome | Idade | Cidade |
---|---|---|---|
15567721 | Joana Aguiar | 12 | Maia |
13221376 | Pedro Santos | 79 | Braga |
12851320 | Inês Silva | 53 | Setúbal |
CodMedico | NumPaciente | Data | Hora | Doença | Sala |
---|---|---|---|---|---|
14429875 | 13221376 | 21/03/2017 | 16:30 | Trombose | B1.154 |
12687871 | 12851320 | 30/01/2017 | 09:45 | Joanete | A3.058 |
16918243 | 15567721 | 22/02/2017 | 18:15 | Gripe | L5.133 |
Referências
- ↑ 1,0 1,1 1,2 Silva, Libório. SQL Avançado. Lisboa : Editorial Presença, 1998. ISBN 972-23-1306-1
- ↑ 2,0 2,1 2,2 Damas, Luís. SQL. Lousã : FCA - Editora de Informática, 2005. ISBN 978-972-722-443-2
- ↑ 3,0 3,1 Date, C. J. SQL e Teoria Relaciona. Brasil : O'REILLY novatec, 2015. ISBN 978-85-7522-433-5.
- ↑ 4,0 4,1 Michael J. Donahoo, Gregory David Speegle. SQL: Practical Guide for Developers. San Francisco : Morgan Kaufmann Publishers, 2005. ISBN 0-12-220531-6