COMO LO HAGO?

SARA
13 de Julio del 2005
HOLA!ESTOY HACIENDO UNA APLICACION WEB CON JAVA Y ORACLE. LA APLICACION ES UN SERVIDOR DE AUTO-CORRECTION DE EJERCICIOS SQL, TODO EL MUNDO PUEDE USARLA, NO SOLICITO IDENTIFICACION. EL CASO ES UQE CUANDO UN USUARIO SE CONECTA YO LE OFREZCO UN MONTON DE PRACTICAS PARA UQE HAGA LA QUE QUIERA. CADA PRACTICA TRABAJA CON UN CONJUNTO DE TABLAS DISTINTAS, VAMOS CON BASES DE DATOS DIFERENTES, ENTONCES EN EL MOMENTO EN QUE EL USUARIO ELIGE LA PRACTICA YO TENGO UQE EJECUTAR UN FICHERO DE CREACION DE ESA BASE DE DATOS EN CONCRETO Y CUANDO DEJE DE USARLA BORRO LO QUE HE CREADO. MI PROBLEMA ES ¿COMO LO HAGO SI TENGO QUE TENER EN CUENTA ESTAS COSAS:

1.-SI DOS USUARIOS DISTINTOS QUIEREN HACER LA MISMA PRACTICA NO PUEDO CARGARLA DOS VECES.

2.- SI DOS USUARIOS ESTAN TRABAJANDO CONLA MISMA TABLA( PUEDEN PORQUE SOLO PUEDEN HACER CONSULTAS, NUNCA MODIFICAR) Y UNO DE ELLOS TERMINA COMO IDENTIFICO QUE HAY OTRO TRABAJANDO Y QUE POR LO TANTO NO DEBO BORRAR LAS TABLAS.

3.- SI DOS USUARIOS QUIEREN TRABAJAR CON DOS PRACTICAS DIFERENTES VALE CARGO LAS DOS PERO ¿Y SI TIENEN TABLAS CON EL MISMO NOMBRE?

AYUDA POR FAVOR!

mecagoentuputamadre
13 de Julio del 2005
pufff, yo te diria que te amorraras al pilón que es para lo unico que valeis las tias.

Jor-El
13 de Julio del 2005
Pero hay dos cosas mas que hacen muy bien.

1-) Abrirse de piernas
2-) Chupar pollas

¿ No ?

silver
13 de Julio del 2005
Yo creo que hay prácticas que no se pueden hacer, y una de ellas es crear bases de datos. Podrías crear esquemas dentro de la misma base de datos.
Personalmente creo que las prácticas se deberían reducir a inserción de datos.

sara
13 de Julio del 2005
Hola silver no se a que te refieres con lo de crear esquemas dentro de la base de datos, yo lo que necesito es para cada practica crear las tablas que necesita esa practica, me entiendes??Gracias!

Jor-El
13 de Julio del 2005
Tu problema es que aparte de no tener claro lo que quieres, ni sabes explicarte ni tienes mucha idea de Oracle, pero pa que veas que soy bueno, te voy a dar una idea.

Create un usuario en cuyo esquema van a ir todas las tablas de los ejercicios.
P.e. USER_DBA
Create tantos usuarios como alumnos tengas.
P.e.
USER_1
USER_2
USER_3
USER_4
Cuando una alumno vaya a empezar un ejercicio ( P.e. USER_1 ) , lanzas un script en el esquema de USER_DBA
para crear las tablas de ese usuario, pero creandolas con el prefijo de ese usuario :
CREATE TABLE USER_1_PROVEEDORES................
Luego das grants al USER_1 sobre esas tablas :
GRANT INSERT, SELECT,DELETE , UPDATE ON USER_1_PROVEEDORES TO USER_1..........
Y para hacerlo mas facil, te creas tb un sinonimo PRIVADO para ese usuario sobre esas tablas :
CREATE SYNONYM USER_1.USER_1_PROVEEDORES FOR USER_DBA.USER_1_PROVEEDORES

Luego, cuando el andobal cierre su sesión, haces un DROP de todo esto que te has creado :
DROP TABLE USER_1_PROVEEDORES
DROP SYNONYM USER_1.USER_1_PROVEEDORES


CHAZÁM ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

sara
13 de Julio del 2005
Pues muchas gracias por la idea, pero esque mi problema esta en que la aplicacion es para uso publico, aver si me explico cualquier persona puede acceder a ella aunque no sea alumno, por eso no puedo mantener un registro de cuantos son me entendeis??

Jor-El
13 de Julio del 2005
Vamos a ver Sara, no seas tan borde y contestame.
¿ Te han follao ya o todavia tienes telita entre las piernas ?
Yo, por un modico precio te hago mujer y por un pequeño suplemento te reviento el culo a manguerazo limpio.

Tu diras, zorrita mia

danzinger
13 de Julio del 2005
No entiendo nada, como quieres crear una base de datos por cada conexion a oracle??

Creo que hay un error de planteamiento bastante grande no?