RESUMEN CREAR BASE DE DATOS A CODIGO

by ALFJZ 0


 

connect system/josias

SQL> Create tablespace datos2 datafile  ‘c:\oraclexe\oradata\xe\datos2.ora’ size 30M;

SQL> CREATE TEMPORARY TABLESPACE TEMPORAL2 TEMPFILE ‘C:\oraclexe\oradata\XE\temporal2.ora’ size 30m;

Tablespace created.

SQL> CREATE USER josias IDENTIFIED BY josias DEFAULT TABLESPACE DATOS TEMPORARY TABLESPACE TEMPORAL ;

 

User created.

 

CREATE USER parcial5 IDENTIFIED BY josias DEFAULT TABLESPACE datos TEMPORARY TABLESPACE temporal QUOTA 60 m ON datos;

User created

 

Grant  alter any table to permisos, alumnos;

 

 

SQL> alter table personal

  2  add constraint pk_personal

  3  primary key (cod_empleado);

 

Table altered.

 

SQL> alter table proyectos

  2  add constraint pk_proyectos

  3  primary key (cod_proyecto);

 

Table altered.

 

SQL> alter table oficinas

  2  add constraint pk_oficinas

  3  primary key (cod_oficina);

Table altered.

 

7 . Para tener agregar el campo en la table proyectos para poder utilizer la llave foranea con la de oficina..

SQL> alter table proyectos

  2  add codoficina number(10);

Table altered.

 

8 .  SE AGREGA LA LLAVE FORANEA

SQL> alter table proyectos

  2  add constraint fk_proyectos_codoficina

  3  foreiGN key (codoficina)

  4  references OFICINAS(COD_OFICINA);

Table altered.

 

SQL> create role permisos1;

Role created.

SQL> grant alter any table to permisos1, josias;

Grant succeeded.

SQL> grant connect, dba, resource to permisos1;

grant succeded.

SQL> grant permisos1 to josias;

Grant succeeded.

 

 

commit;

 

SQL> connect josias/josias;

Connected.

 

 

CREATE TABLE TABLAJOSI(CEDULA VARCHAR2(25), NOMBRE VARCHAR2(20) NOT NULL, APELLIDO VARCHAR2(20) NOT NULL, primary key (CEDULA));

 

 

 

 

 

 

 

 

 

SQL*Plus: Release 11.2.0.2.0 Production on MiÚ Abr 18 22:50:04 2012

 

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

 

SQL> connect system/josias

Connected.

SQL> connect alumnos/alumnos

ERROR:

ORA-01045: user ALUMNOS lacks CREATE SESSION privilege; logon denied

 

SQL> create role permisos;

 

Role created.

 

SQL> grant alter any table to permisos,alumnos;

 

Grant succeeded.

 

SQL> grant connect, dba, resource to permisos;

 

Grant succeeded.

 

SQL> grant permisos to alumnos;

 

Grant succeeded.

 

SQL> commit;

 

Commit complete.

 

SQL> connect alumnos/alumnos

Connected.

SQL> CREATE TABLE  ALUMNO(CEDULA VARCHAR2(50), NOMBRE VARCHAR2(20) NOT NULL, APE

LLIDO VARCHAR2(20) NOT NULL , primary key (ced));

CREATE TABLE  ALUMNO(CEDULA VARCHAR2(50), NOMBRE VARCHAR2(20) NOT NULL, APELLIDO

 VARCHAR2(20) NOT NULL , primary key (ced))

 

                                      *

ERROR at line 1:

ORA-00904: "CED": invalid identifier

 

 

SQL> CREATE TABLE  ALUMNO(CEDULA VARCHAR2(50), NOMBRE VARCHAR2(20) NOT NULL, APE

LLIDO VARCHAR2(20) NOT NULL, primary key (CEDULA));

CREATE TABLE  ALUMNO(CEDULA VARCHAR2(50), NOMBRE VARCHAR2(20) NOT NULL, APELLIDO

 VARCHAR2(20) NOT NULL, primary key (CEDULA))

*

ERROR at line 1:

ORA-01950: no privileges on tablespace 'DATOS'

 

 

SQL> grant connect, dba, resource to permisos, alumnos;

 

Grant succeeded.

 

SQL> commit

  2  commit;

commit

*

ERROR at line 2:

ORA-02185: a token other than WORK follows COMMIT

 

 

SQL> commit;

 

Commit complete.

 

SQL> CREATE TABLE TABLAJOSI(CEDULA VARCHAR2(25), NOMBRE VARCHAR2(20) NOT NULL, APELLIDO VARCHAR2(20) NOT NULL, primary key (CEDULA));

 

Table created.

 

SQL> select * from alumno

  2  select * from alumno

  3  select * from alumno;

select * from alumno

*

ERROR at line 2:

ORA-00933: SQL command not properly ended

 

 

SQL> desc alumno;

 Name                                      Null?    Type

 ----------------------------------------- -------- ----------------------------

 

 CEDULA                                    NOT NULL VARCHAR2(50)

 NOMBRE                                    NOT NULL VARCHAR2(20)

 APELLIDO                                  NOT NULL VARCHAR2(20)

 

SQL> insert into alumno

  2  (cedula, nombre, apellido)

  3  values (1065612477, 'Josias', 'Ibarra');

 

1 row created.

 

SQL> desc alumno

 Name                                      Null?    Type

 ----------------------------------------- -------- ----------------------------

 

 CEDULA                                    NOT NULL VARCHAR2(50)

 NOMBRE                                    NOT NULL VARCHAR2(20)

 APELLIDO                                  NOT NULL VARCHAR2(20)

 

SQL> select * from alumno

  2  ;

 

CEDULA                                             NOMBRE

-------------------------------------------------- --------------------

APELLIDO

--------------------

1065612477                                         Josias

Ibarra

 

 

SQL> replace type

 

 

 

SQL> CREATE USER parcial10 IDENTIFIED BY josias DEFAULT TABLESPACE datos TEMPORARY TABLESPACE temporal QUOTA 60 m ON datos;

 

User created.

USUARIO PARCIAL 10 / JOSIAS..

CREAR LAS TABLAS CON LOS IDS PRIMARY Y EL NOMBRE..

DESPUES ADICIONAR EL CAMPO IDPROVEEDOR E IDCATEGORIA EN LA TABLA PRODUCTO  Y DESPUES PONER COMO FORAING KEY A EL ID DEL PROVEEDOR Y EL ID DE LA CATEGORIA... Y RELACIONARLAS CON LAS TABLAS DE PROVVEEDOR Y LA TABLA CATEGORIA  ( TIENE QUE ESTAR CREADAS LAS TABLAS DEL PROVEEDOR Y LA CATEGORIA CON LA PRIMARY KEY)..

 

SQL> alter table producto

  2  add idcategoria number(10);

Table altered.

 

SQL> alter table producto

  2  add constraint fk_producto_idcategoria

  3  foreign key (idcategoria)

  4  references categoria(id);

Table altered.


 

 

SQL> select producto.nombreproducto, proveedor.nombre from producto, proveedor where idproveedor = proveedor.id ;

 

SQL> update producto set costo=5000 where idcategoria=1;

6 rows updated.

 

Para la vista

SQL> create view vista2 as select nombre_proyecto, presupuestos, nombre_oficina

from proyectos, oficinas;

SQL> update proyectos set presupuestos = 450000 where cod_proyecto = 1;

1 row updated.

 

SQL> update proyectos set presupuestos = 25550000 where cod_proyecto = 2;

 

 

PARA COLOCARLE EL VALOR DE UNA FILA A OTRA.

SQL> update proyectos set presupuestos = (select presupuestos from proyectos where  cod_proyecto=2 ) where (cod_proyecto=1) ;

Update proyectos set presupuestos=  presupuestos*2 where presupuestos<1000

Update proyectos set presupuestos = 333, gastos=764, comisiones=86868

Insert into proyectos (código,etc…) values(1,…);

Select código from proyectos;

1 row updated.

UPDATE, INSERT

SELECT PRESUPUESTO FROM PROYECTOS WHERE COD_PROYECTO=5;

()

 

 

UN PROYECTO PERTENECE A UNA CATEGORIA...... MOSTRARME TODOS LOS PROYECTOS QUE PERTENECEN A UNA CATEGORIA EN UNA VISTA SIN IMPORTAR LA OFICINA EN LA QUE  ...

SQL> create view VISTAPROYECTOSCATEGORIA2 AS SELECT NOMBRE_PROYECTO, NOMBRE_OFICINA FROM PROYECTOS, OFICINAS WHERE CODCATEGORIA = 1 and OFICINAS.COD_OFICINA = PROYECTOS.CODOFICINA;

View created.

 

 

SQL> CREATE VIEW OFICINA_CATEGORIAXY AS select nombre_proyecto, nombre_oficina, n

ombre_catego from proyectos, categoria, oficinas where cod_catego=codcategoria and

 cod_oficina=codoficina and nombre_catego='CATEGORIA_Y' AND nombre_oficina='OFIC

INAX';

 

View created.

 

Leave a Reply