Manual sql

Solo disponible en BuenasTareas
  • Páginas : 25 (6220 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de marzo de 2011
Leer documento completo
Vista previa del texto
Tablas y usuarios
Tablas
En este capítulo se van a tratar dos temas fundamentales en toda base de datos Oracle: los usuarios o esquemas y las tablas. Se explicará todo muy por encima ya que el objetivo de este manual no es mostrar cómo consultar o crear datos en una base de datos Oracle, sino conocer los elementos que soportan una base de datos Oracle y que será lo que se explica conprofundidad en los siguientes temas. Además, se parte de la idea de que se conoce SQL y la herramienta SQLPLUS, desde la cual se ejecutan todas las sentencias que se explican en el manual para la creación de usuarios, tablas, tablespaces, datafiles, etc.
La función básica de una base de datos es la de almacenar información. Esta información se almacena en unas unidades lógicas llamadas tablas.
Laforma en que se almacenan los datos en las tablas está estructurada de manera que resulte muy sencillo su acceso y en cada tabla guardaremos los datos que tienen relación o que definen una idea del mundo real. Por ejemplo, podemos crear una tabla para almacenar la información de los empleados de una empresa. A esta tabla la podemos llamar empleados y, por cada empleado podemos querer guardarinformación de su edad, sus años de antigüedad, su nombre y sus apellidos.
Cuando creamos una tabla de Oracle, hay que indicar su nombre, que en nuestro caso va a ser empleados, y qué información y de qué tipo vamos a guardar en ella, siendo en nuestro caso la edad que será un número, la antigüedad que será también un número, su nombre que será un dato carácter y su apellido que serán también caracteres.Una sintaxis básica para crear esta tabla puede ser la siguiente:
Create table empeados (edad number, antigüedad number, nombre varchar2(30),
apellido varchar2(30));
¿Cómo se almacena la información en una tabla?.
Cuando creamos una tabla, ésta se crea vacía, es decir, no contiene datos. Para crear los datos se deben ir ejecutanto sentencias de manipulación de datos. La instrucción básicapara crear un nuevo registro es la INSERT y con ella lo que hacemos es crear un nuevo empleado con sus datos en la tabla de empleados. Existen 3 operaciones básicas más que se pueden realizar sobre las tablas. La sentencia UPDATE se utiliza para modificar los valores de algún registro o fila ya existente, por ejemplo, si hemos insertado en la tabla de empleados a un empleado el año pasado, esteaño tendremos que aumentarle en uno su edad por lo que habrá que hacer una modificación a ese empleado, a esa fila.
Para borrar registos de una tabla porque, por ejemplo, el empleado se ha cambiado de empresa, se utiliza la sentencia DELETE.
Y finalmente, para consultar datos de nuestra tabla de empleados, la sentencia utilizada es la SELECT. Con ella podremos hacer todas las preguntas que se nosocurran a nuestra base de datos sobre los empleados que tenemos. Con la definición de la tabla que hemos creados, podremos hacer preguntas como ¿qué nombre tiene el empleado de mayor edad?, ¿cual es la antigüedad del empleado de nombre 'X'?, etc.
Ahora que tenemos una idea sobre qué es una tabla, vamos a ver algunas operaciones que nos permiten modificar su estructura, que no es lo mismo quemodificar sus datos.
Por ejemplo, imaginemos que nos damos cuenta de que queremos guardar de nuestros empleados también el departamento de la empresa al que pertenecen. Tal y como hemos creado la tabla, no hemos recogido esta información. Por lo tanto, hay que modificar su estructura para que podamos añadir este dato a las filas que ya existen, a los empleados que ya tenemos y para que a lospróximos empleados que insertemos les podamos dar directamente ya su número de departamento.
En estos momentos nuestra tabla tiene cuatro campos o atributos, que son la edad, la antigüedad, el nombre y el apellido. Ahora, vamos a añadir un nuevo campo para que podamos almacenar también el número del departamento de cada empleado.
Alter table empleados (add departamento number(8));
Con esta...
tracking img