Documento da Universidade sobre a creación da estrutura de bases de datos relacionais. O Pdf, de Informática e nivel universitario, explora o deseño físico, a linguaxe SQL para definición e manipulación de datos, e a xestión de bases de datos e táboas, incluíndo a conexión a MySQL.
See more30 Pages


Unlock the full PDF for free
Sign up to get full access to the document and start transforming it with AI.
Páxina 1 de 301. Os obxectivos desta actividade son: · Analizar os detalles do almacenamento físico dunha base de datos. · Crear e borrar bases de datos e táboas utilizando a linguaxe SQL de definición de datos, asistentes e ferramentas gráficas, seguindo as especificacións detalladas nos deseños conceptuais e lóxicos.
Utilizarase a plataforma WAMP (Windows-Apache-MySQL-PHP) WampServer 2.5 (última versión estable en outubro 2015), que inclue MySQL Community Edition 5.6.17 como SXBDR (Sistema Xestor de Bases de Datos Relacional). As razóns de utilización deste software son que: · É software libre, polo que o alumnado poderá descargalo de forma gratuita e utilizalo legalmente na súa casa. · É unha forma sinxela de facer a instalación do software necesario para desenvolver aplicacións web.
W Páxina oficial de WampServer: http://www.wampserver.com Páxina oficial de MySQL: https://www.mysql.com/
Utilizarase MySQL Workbench 6.3 como ferramenta cliente gráfica para facer as prácticas asociadas a esta actividade, xa que é a recomendada por MySQL en outubro de 2015, aínda que tamén poderían utilizarse outras como phpMyAdmin, EMS MyManager, ou MySQL Query Browser.
En https://www.mysql.com/products/workbench/ pode obterse información detallada sobre a fe- rramenta MySQL Workbench e descargar o software.
En http://dev.mysql.com/doc/index-gui.html pode descargarse o manual de MySQL Workbench.
O material auxiliar anexo a esta actividade inclúe unha Guía básica de MySQL Workbench 6.3.
Páxina 2 de 302. O deseño físico realízase unha vez rematadas as fases de deseño conceptual e lóxico, sendo o proceso de implantación definitiva da base de datos deseñada sobre un SXBD concreto. Para elo pódese empregar: · Directamente instrucións do xestor da base de datos. · Algunha ferramenta gráfica que facilite a creación da base de datos sen necesidade de coñecer a sintaxe da linguaxe utilizada polo xestor para ese fin.
É imprescindible empregar o manual de referencia do SXBD seleccionado para coñecer as normas de sintaxe propias do fabricante. Destácanse as seguintes precaucións: · Nomes de bases de datos, táboas, columnas. Como regra xeral poderemos empregar nomes que leven letras, números, o guión baixo e o símbolo de dólar, tratando de evitar o uso doutros carácteres especiais incluídos o ñ, os acentos ou calquera outro símbolo. A razón desta recomendación é que aínda que o noso SXBD permita o uso de carácteres especiais pode que no futuro teñamos que migrar as nosas bases de datos a outro SXBD, ou a outro sistema operativo, que teña unas normas máis restritivas. · Uso de maiúsculas, minúsculas, ou unha mestura de ambas, para nomear. Deberíase de empregar unha norma xeral, como poñer os nomes sempre en minúsculas, xa que se tiveramos que migrar dun sistema Windows a outro sensible a maiúsculas e minúsculas (case sensitive), como pode ser Linux, pódense xerar problemas. · Tipos de columnas. Cando se fai unha migración dunha base de datos dun SXBD a outro, é importante revisar os tipos de columnas propios dos SXBD utilizados, xa que, a pesar de existir unha norma ANSI estándar para os tipos de datos, cada fabricante introduce algunhas modificacións para mellorar o rendemento do seu motor. Así é posible que no SXBD dun determinado fabricante existan tipos de datos que non existen nos demais, ou que un mesmo tipo de dato se comporte de distinta maneira en canto a rangos de valores permitidos e espazo que ocupa no almacenamento. · Definición das estruturas físicas de almacenamento. É importante coñecer a maneira en que o noso SXBD almacena os obxectos das bases de datos (tablespaces), ou os ficheiros de datos (datafiles).
SQL corresponde ao acrónimo de Structured Query Language (Linguaxe Estruturado de Consultas) e é unha ferramenta para organizar, xestionar e recuperar datos almacenados nunha base de datos relacional. Naceu como software de consulta pero actualmente aínda que esa é unha das súas funcións máis importantes, utilízase para controlar todas as funcións que subministra un SXBDR aos seus usuarios, incluíndo todas as funcións das linguaxes deseñadas para o manexo de bases de datos: Linguaxe de Definición de Datos (LDD), Linguaxe de Manipulación de Datos (LMD), e Linguaxe de Control de Datos (LCD).
Páxina 3 de 302.1.1 A linguaxe de definición de datos ou LDD permite a definición de obxectos da base de datos e a organización física dos datos almacenados.
A linguaxe de manipulación de datos ou LMD permite: · Recuperación de datos. SQL permite recuperar e utilizar os datos almacenados nunha base de datos a un usuario ou a un programa. · Mantemento de datos. SQL permite actualizar a base de datos a un usuario ou a un programa, engadindo novos datos, borrando ou modificando os que xa están almacenados.
A linguaxe de control de datos ou LCD permite: · Control do acceso. SQL pode ser utilizado para xestionar as contas dos usuarios e restrinxir a súa capacidade para recuperar, engadir e modificar datos, protexendo os datos almacenados contra accesos non autorizados. · Control do acceso concorrente aos datos. SQL permite establecer sistemas de bloqueos de datos para permitir que varios usuarios poidan acceder ao mesmo tempo á base de datos para compartir información, evitando interferencias entre eles. · Integridade de datos. SQL permite establecer medidas de seguridade para protexer os datos de ataques externos ou ante fallos do sistema e a recuperación da base de datos para volver a estar disponible para os usuarios.
SQL- Structured Query Language DDL ou LDD Data Definition Language ou Linguaxe de definición de Datos DML ou LMD Data Manipulation Language ou Linguaxe de manipulación de datos DCL ou LDC Data Control Language ou Linguaxe de control de datos CREATE ALTER DROP INSERT UPDATE DELETE SELECT GRANT REVOKE DATABASE TABLE CONSTRAINT INDEX VIEW PROCEDURE FUNCTION TRIGGER DATABASE TABLE VIEW PROCEDURE FUNCTION TRIGGER DATABASE TABLE CONSTRAINT INDEX VIEW PROCEDURE FUCTION TRIGGER COMMIT ROLLBACK LOCK UNLOCK
Paxina 4 de 302.1.4 Un dos elementos clave da aceptación de SQL no mercado é a existencia dun estándar oficial adoptado polo American National Standards Institute (ANSI) e a International Standards Organization (ISO). Sen embargo, hai outros dous estándares de SQL importantes que inclúen o SQL definido por DB2 de IBM e o estándar X/OPEN de SQL para UNIX.
Os inicios do estándar oficial de SQL foron en 1982, cando ANSI encargou ao seu comité X3H2 a definición dunha linguaxe de base de datos relacional. O estándar ANSI para SQL resultante está baseado en gran medida no SQL de DB2, aínda que contén algunhas diferenzas importantes.
SQL-86 Primeira publicación feita por ANSI. Confirmada por ISO en 1987.
SQL-89, ou SQL1 Supón unha revisión menor da norma anterior
SQL-92, ou SQL2 Supón unha revisión importante, con normas máis ríxidas. Mentres que o estándar orixinal de 1986 ocupaba menos de 100 páxinas, o estándar oficial SQL2, ou SQL-92, ocupou case 600.
SQL-99 ou SQL3 Incorpora a utilización de triggers ou disparadores, novos tipos de datos e novas características enfocadas á programación orientada a obxectos.
Revisións dos anos 2003, 2005, 2008 e 2011 Centran a maioría dos esforzos en introducir algunhas características de XML, definindo a maneira en que SQL pode ser utilizado conxuntamente co XML.
A pesar destas normas de estandarización, cada fabricante de SXBDR incorpora o seu propio dialecto SQL co fin de ofertar un produto que o diferencie dos seus competidores e incluso chega a poñerlle un nome diferente. Exemplos: -Access SQL de Microsoft Access - Transact SQL de Microsoft SQL Server - PL/SQL de Oracle - MySQL de MySQL - PgSQL de PostgreSQL
SQL é unha linguaxe declarativa de alto nivel, é dicir, non procedimental. Isto significa que as sentenzas SQL especifican o que se quere obter, pero non a forma de conseguilo.
A orde interna na que se executan as operacións asociadas a unha sentenza SQL é establecida polo optimizador de consultas do SXBD.
As sentenzas SQL poden utilizarse: · Escribindo directamente as sentenzas coa axuda dun cliente en modo texto, en modo gráfico, ou na pantalla dun terminal interactivo. O servidor devolve o resultado da petición. · Gardando un conxunto de sentenzas nun ficheiro de ordes (scripts), que se executan todas seguidas de forma secuencial. · Escribindo as sentenzas de SQL incluídas (embebidas) en programas escritos con distintas linguaxes de programación como PHP, Java ou C#.
Páxina 5 de 302.1.6 Para conectarse a un servidor de MySQL é necesario empregar algunha aplicación cliente que establece a conexión utilizando os seguintes parámetros: > mysql -h servidor -P porto -u usuario -p contrasinal -h Máquina do servidor (nome ou IP, por defecto localhost). -P Porto no que o servidor escoita as peticións (por defecto '3306'). - u Nome de usuario que se conecta (por defecto 'root'). -p A contrasinal (por defecto ningunha).
As aplicacións cliente máis empregadas para conectase a un servidor MySQL son: · Consola modo texto 'mysql.exe': - Dende o menú de Wampserver hai que seleccionar 'MySQL console' no submenú de MySQL. Ábrese unha consola en modo texto que solicita introducir o contrasinal do usuario root. Unha vez introducido o contrasinal, mostrase o prompt mysql> que indica que está establecida a conexión co servidor e xa se poden empezar a escribir sentenzas para que o servidor as execute. As sentenzas SQL que se executen nesta consola estarán completas cando terminen en punto e coma. Pódense escribir sentenzas que ocupen varias liñas. Se pulsa a tecla Intro e a liña non finaliza en punto e coma, mostrarase o prompt -> que indica que a sentenza continúa. Mentres non se envíe o punto e coma, non se considera que a sentenza estea completa e non é executada polo servidor. - No caso de non ter instalado Wampserver, hai que abrir unha consola de ordes do sistema e executar a utilidade cliente 'mysql.exe' que está no directorio 'bin' que se atopa no directorio de instalación de MySQL. · MySQL Workbench: Cando se executa, hai que seleccionar o servidor co que se quere establecer a conexión, e ábrese un entorno gráfico no que se mostra información do servidor. Permite escribir sentenzas SQL mediante un editor, para ser enviadas ao servidor. · Aplicación web phpMyAdmin: - No caso de ter instalado Wampserver, seleccionando a opción phpMyAdmin. - No caso de non ter instalado Wampserver, hai que abrir un navegador e teclear a url coa identificación do servidor web no que está instalado phpMyAdmin. Exemplos de url: http://localhost/phpMyAdmin (no caso que phpMyAdmin estea instalado nun servidor web no equipo local), http://proveedor_web.com/phpMyAdmin (no caso que phpMyAmin estea instalado no servidor proveedor_web.com).
Tarefa1. Conexión cun servidor MySQL. Aparte de poder conectarse co servidor empregando as anteriores aplicacións cliente, tamén se pode facer dende os programas de aplicación que van a procesar os datos das bases de datos, incluíndo as sentenzas de conexión no código dos programas. No seguinte exemplo móstrase o establecemento dunha conexión dende un programa escrito en PHP:
Páxina 6 de 30