Sqlbd1 T Line Comando
Introducci´
on a SQL sobre Oracle
Luis A. Gonz´
alez Ares
lgares@udc.es
Lenguaje SQL
Contenido
• Lenguaje SQL sobre Oracle.
−
−
−
−
−
−
−
−
−
Descripci´
on de las caracter´ısticas y elementos fundamentales del lenguaje.
Ejercicios sobre la sentencia SELECT.
Otras sentencias DML.
Sentencias DDL.
Vistas.
Indices.
Seguridad.
Transacciones.
Cat´
alogo.
Nota
Elpresente material es un resumen de lo impartido en las clases de la Facultad de Inform´
atica,
que se entrega como documento de apoyo.
Esta obra est´
a bajo una licencia Reconocimiento-NoComercial-SinObraDerivada de Creative
Commons (Attribution-NonCommercial-NoDerivatives).
Introducci´
on a SQL sobre Oracle – Luis Glez. Ares – lgares@udc.es
lgares@udc.es
1
Lenguaje SQL
Introducci´
on a SQL
SQL(Structured Query Language : Lenguaje de Consulta Estructurado)
Acceder a los datos de un SGBD relacional (crear, consultar, modificar).
Evoluci´
on:
• SEQUEL (Structured English QUEry Language). IBM para SYSTEM R.
• SQL-86 o SQL1. ANSI e ISO en 1986. Revisado en 1989.
• SQL-92 o SQL-2. 1992.
• SQL:1999, SQL:2003.
Dos vertientes fundamentales en los lenguajes de BD relacionales:
• DDL o LDD(lenguaje de definici´
on de datos).
• DML o LMD (lenguaje de manipulaci´
on de datos).
Otras caracter´ısticas:
• Aspectos de control (seguridad, transacciones, concurrencia, etc.),
• Posibilidad de incluir SQL en lenguajes de prop´
osito general como C, Pascal, Java, etc.
• Lenguaje no procedural (el qu´
e frente al c´
omo)
• Act´
ua sobre un conjunto de registros o filas.
• Base te´
orica: sefundamenta en el ´
algebra relacional y en el c´
alculo relacional.
• Lenguaje para todo tipo de usuarios de un SGBD relacional.
• Trabaja con tablas, columnas y filas, no con relaciones, atributos y tuplas. Una tabla es
diferente a una relaci´
on, ya que puede tener filas repetidas.
• No es un lenguaje de prop´
osito general.
Introducci´
on a SQL sobre Oracle – Luis Glez. Ares – lgares@udc.eslgares@udc.es
2
Lenguaje SQL
SQL*Plus de Oracle
Los fabricantes amplian las caracter´ısticas del est´
andar pero dejan elementos sin implementar.
SQL*Plus: Interface de Oracle que permite ejecutar sentencias SQL y comandos propios.
Entrar en SQL*Plus (servidor oracle o xurxo):
$ sqlplus / [@filename]
Comandos SQL*Plus. Uno por fila:
SQL> DESC[RIBE] emp
Nombre
Nulo?
Tipo----------------------------------------- -------- -------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NUMBER(2)
Sentencias SQL: Multifila y acaban en ;
SQL> SELECT *
FROM
emp;
Salir de SQL*Plus:
SQL> EXIT
Introducci´
on a SQL sobre Oracle – Luis Glez. Ares – lgares@udc.es
lgares@udc.es
3
Lenguaje SQL
SQL*Plus de Oracle(cont.)
Crear el fichero de configuraci´
on login.sql y ubicarlo en el directorio de llamada a SQL*Plus.
Por ejemplo:
$ cat login.sql
def_editor=vi
set pages 50
set feed 1
column empno format
column mgr
format
column sal
format
column comm
format
column deptno format
9990
9990
99,990
99,990
90
SQL*Plus usa un buffer para almacenar la ´
ultima sentencia SQL ejecutada (no afecta a los
comandosSQL*Plus). Incorpora un editor de l´ıneas elemental para realizar cambios m´ınimos
en esa sentencia SQL, como visualizarla (LIST), editarla (ED), etc.
Algunas ´
ordenes muy habituales son:
L[IST] [n [m]]
ED[IT] fichero[.sql]
R[UN]
/
SAV[E] fichero[.sql]
GET fichero[.sql]
Visualiza l´
ıneas del buffer
Edita un fichero [.sql]
Ejecuta lo almacenado en el buffer
Ejecuta lo almacenado en el buffer
Almacena elbuffer en un fichero
Pasa al buffer un fichero
Introducci´
on a SQL sobre Oracle – Luis Glez. Ares – lgares@udc.es
lgares@udc.es
4
Lenguaje SQL
SQL*Plus de Oracle (cont.)
Una lista m´
as amplia de ´
ordenes:
L[IST] [n [m]]
A[PPEND] texto
C[HANGE] /viejo/nuevo/
C[HANGE] /texto/
CL[EAR] BUFF[ER]
DEL
[n [m]]
I[NPUT] [texto]
R[UN]
/
Visualiza l´
ıneas del buffer
A~
nade texto al final de la...
Regístrate para leer el documento completo.