PDF de programación - Continuación SQL

<<>>
Imágen de pdf Continuación SQL

Continuación SQLgráfica de visualizaciones

Publicado el 11 de Julio del 2017
649 visualizaciones desde el 11 de Julio del 2017
145,2 KB
28 paginas
INDICE

Continuacion SQL

Indice

1. Continuacion del SQL como DML (Lenguaje de Manipulacion de Datos)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.
1.2. Borrado de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Modicacion de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Insercion de datos

2. SQL como DDL (Lenguaje de Denicion de Datos)

2.3.1. Alteracion de atributos

2.1. Creacion de tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1. Denicion de atributos . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2. Denicion de restricciones . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Borrado de Tablas
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3. Modicion (Alteracion) de Tablas . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
2.4. Creacion de ndices con SQL . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5. Vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1. Creacion de Vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.2. Borrado de vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.3. Ventajas del uso de vistas . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.4. Consultas sobre vistas . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.5. Actualizacion de vistas . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.6. With check option . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6. Seguridad y permisos (en Oracle) . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.1. Los conceptos de \Role" y \PUBLIC" . . . . . . . . . . . . . . . . . .
2.6.2. Gestion de permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.3. Permisos globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7. Transacciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3. El catalogo

Laboratorio de Bases de Datos

1
1
2
2

2
3
3
4
7
7
7
9
10
11
12
13
13
14
19
20
20
21
21
23

26

i

1. Continuacion del SQL como DML (Lenguaje de

Manipulacion de Datos)

1.1.

Insercion de datos

Para insertar datos en una tabla, usaremos la sentencia INSERT, que tiene la siguiente

sintaxis:

INSERT INTO <nombre_tabla> [(<lista campos>)] VALUES (<lista valores>)

La lista de campos (atributos de la tabla) es opcional. Si se omite, es lo mismo que si se
incluyese la lista de todos los atributos de la tabla, siguiendo el orden denido en la sentencia
de creacion de la tabla. Si se incluye, pueden indicarse solo una parte de los campos (o todos)
en el mismo o distinto orden de la denida en la creacion de la tabla. As, las dos sentencias
siguientes son equivalentes:

INSERT INTO EMP (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES (8555, ’Jose’, ’ANALISTA’, 7369, ’12-FEB-02’, 3000, 300,10);

INSERT INTO EMP VALUES (8555, ’Jose’, ’ANALISTA’, 7369, ’12-FEB-02’, 3000, 300,10);

La lista de valores, por supuesto, debe contener tantos valores como atributos hay en
la lista de campos, y corresponderse un al tipo del atributo correspondiente. Por supuesto,
el valor NULL puede ser usado, si el campo correspondiente fue denido aceptando valores
nulos.

Si se usa la lista de campos, podemos variar el orden de los campos, o omitir alguno de
ellos. En los campos omitidos se insertaran nulos, o el valor por defecto (se as se denio para
el campo). Por ejemplo, las siguientes tres sentencias tambien seran equivalentes.

INSERT INTO DEPT(DEPTNO,DNAME) VALUES(50,’COMPRAS’);
INSERT INTO DEPT (DNAME,DEPTNO) VALUES (’COMPRAS’,50);
INSERT INTO DEPT VALUES (50,’COMPRAS’, NULL);

Ademas de esta forma de insertar datos, que se realiza siempre de tupla en tupla, tambien
se pueden insertar varias tuplas con una sentencia, obteniendo los datos mediante una
sentencia SELECT (una consulta) sobre una o mas tablas. La sintaxis general es la siguiente:

INSERT INTO <nombre_tabla> [(<lista de campos>)]

<Sentencia SELECT>

La unica restriccion es que la sentencia select debe seleccionar el mismo numero de
atributos que campos hay en la lista de campos, y ser union-compatibles. Como en el metodo
anterior, si en la lista de campos se omite, se asume que el select devuelve una lista con todos
los atributos de la tabla en el mismo orden que el establecido en la creacion de la tabla. Por
ejemplo, supongamos que tenemos una tabla COPIA_DEPT que tiene exactamente la misma
estructura que a tabla DEPT. La siguiente sentencia servira para insertar varias tuplas en la
tabla DEPT a partir de una consulta.

INSERT INTO DEPT (DEPTNO, DNAME, LOC)

SELECT C.DEPTNO, DNAME, LOC

FROM COPIA_DEPT C, EMP E
WHERE C.DEPTNO=E.DEPTNO

1

Laboratorio de Bases de Datos

1.2. Borrado de datos

El borrado de datos se realiza mediante la sentencia DELETE, que borra tuplas de una

tabla. La sintaxis general es:

DELETE FROM <nombre_tabla>

[WHERE <Condicion>]

Donde la Condicion es cualquier condicion valida en SQL, es decir, cualquier condicion que
podramos poner en la clausula WHERE de una sentencia SELECT. Por ejemplo,

DELETE FROM EMP

WHERE SAL > 1500

AND JOB <> ’MANAGER’

Es importante indicar que la sentencia DELETE borra siempre tuplas completas, nunca
determinados atributos de una tupla. La clausula WHERE es opcional, y se no se utiliza, se
borraran todas las tuplas de la tabla.

1.3. Modicacion de Datos

La sentencia UPDATE permite modicar los valores almacenados en una tabla, es decir,

cambiar el valor que hay en un atributo de una tupla por otro valor. Su sintaxis es:

UPDATE <nombre_tabla>

SET <atributo_1> = <expre1>

[,<atributo_2>=<expre2>...]

WHERE <Condicion>

Un ejemplo,

UPDATE EMP

SAL = SAL*1.06,

SET
JOB = ’ANALYST’
WHERE EMPNO = 7369

La sentencia de actualizacion examina todas las tuplas que satisfagan a condicion impuesta
en la clausula WHERE (si no se indica, los cambios afectaran a todas las tuplas de la tabla).
Para cada una de estas las, el atributo tomara el nuevo valor, que puede ser una constante
(como en JOB = ’ANALYST’) o una expresion. Las expresiones pueden contener atributos de
la tabla que se esta actualizando, incluso el mismo nombre de atributo que esta a la izquierda
del igual. En este caso, el valor del atributo a la derecha del igual es el valor de dicho atributo
antes de realizarse la actualizacion. Es decir, la asignacion SAL=SAL*1.06 indica que el salario
actual se va incrementar en un 6 % respecto al salario anterior.

2. SQL como DDL (Lenguaje de Denicion de Datos)

Hasta ahora hemos utilizado el

lenguaje SQL como un DML (Data Manipulation
Language) o Lenguaje de Manipulacion de Datos, es decir, para añadir, borrar, modicar o
consultar datos. Pero ademas el SQL puede utilizarse como DDL (Data Denicion Language)
o Lenguaje de Denicion de Datos; esto es, podemos utilizar SQL para crear, modicar o
borrar diferentes objetos de bases de datos como tablas, vistas o ndices.

2

2.1 Creacion de tablas

2.1. Creacion de tablas

La sentencia SQL de creacion de tablas es CREATE TABLE, y en ella se denen por un lado
los atributos que componen la tabla, y por otro las restricciones que afectan a la tabla, tales
como claves primarias o externas. La sintaxis general de la sentencia de creacion se compone
de una lista (separada por comas) de deniciones de atributos seguida opcionalmente de una
lista de deniciones de restricciones:

CREATE TABLE <nombre_tabla>(
<definicion atributo 1>,
<definicion atributo 2>,
...
<definicion atributo n>,
<definicion restriccion 1>,
<definicion restriccion 2>,
...
<definicion restriccion m>
);

A continuacion veremos como realizar cada una de estas deniciones.

2.1.1. Denicion de atributos

Una denicion de atributo describe el nombre y tipo de datos asociados al atributo,
as como si admite o no valores nulos, valores por defecto y restricciones asociadas al atributo.
La sintaxis general es la siguiente:

<nombre_atributo> <tipo> [DEFAULT <valor>] [NOT [NULL]] [<restriccion>]

Donde

<nombre_atributo> es el nombre del atributo.

<tipo> es el tipo del atributo, que sera uno de los tipos de datos vistos anteriormente.

DEFAULT <valor> indica el valor por defecto que almacenara el campo si se inserta una
tupla sin indicar un valor para ese atributo (si no se indica un valor por defecto, se
insertara un valor nulo). <valor> sera, evidentemente, una constante del tipo denido
para el atributo. Existen algunos valores predenidos para algunos tipos de datos. As,
tenemos valores como SYSDATE, que nos da la fecha actual, o USER que es un string que
nos da el nombre del usuario (en el caso de Oracle). Tambien se puede usar el valor NULL
para cualquier tipo de datos, siempre que el atributo lo admita. Sin embargo, hacer esto
no tiene demasiado sentido, ya que es el comportamiento por defecto si no se indica un
valor DEFAULT.

[NOT] NULL indica si el atributo acepta valores nulos (NULL) o no los acepta (NOT NULL). Si

no se indica nada se supone que s los acepta.
  • Links de descarga
http://lwp-l.com/pdf5270

Comentarios de: Continuación SQL (1)

Santiago Andres
11 de Abril del 2023
estrellaestrellaestrellaestrellaestrella
Estoy buscando un profesor para de tiempo completo para que me Enseñe las clases de informática lo agradecería mucho de que ustedes me ayudarían en la informática
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad