Foro de programacion

programacion
RegistrateNewsletter
zonas:adsl:area-flash:area-php:area-asp:area-vb:area-photoshop:area-Vfox:area-Soft:area.:Mas
+ de 45.000 registrados
Secciones: Manuales-Diseño-Trucos-Recursos-Foros/Comunidad-Software-CodigoFuente-compras
AñadenosFavoritos
Secciones: Herramientas-Libros-Webmasters/Google-Noticias -Biblioteca-Cursos--Directorio-EmpleoN
Foros de Programacion - Cominidad de Programadores
 
Foros de programacion
es una web de ayuda a los programadores y webmasters, la buena utilizacion del foro sera el premio que tendremos para q este elemento sea util para los usuarios.

Colaborar: Si deseais ser moderadores de alguno de los foros estaremos encantados en que nos presteis esa ayuda , tan solo es necesario tener algun conocimiento
del tema que trata el foro y tener ganas ganas de colaborar para ser moderador mandar un mail indicando de que foro deseais ser moderador

Deseais que pongamos algun nuevo foro de programacion? ¿quieres crear un nuevo foro y ser su moderador? ponte en contacto con nosotros

Retroceder   Foros > Bases de Datos > sql

Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 11 de mayo,2005, 17:45
ana
Guest
 
Mensajes: n/a
Predeterminado SUPER URGENTE: triggers

Hola chicos, os voy a hacer una pregunta que veo que akí ay nivel . Resulta que stoy haciendo un trabajo. Entre otras cosas tengo que hacer un trigger que se activa al hacer un insert en una tabla. Mi problema es que necesito conocer dentro del trigger valores de la tupla insertada para acceder a otras tablas relacionadas. Por ejemplo, uno de los valores que necesito conocer es el identificador. Alguien me puede ayudar? Muchas gracias y un saludo para todos.

PD: Por si es de ayuda, estoy utilizando oracle 8.

P.D.2: Postee este mismo msj en el foro de mysql, sorry, borrarlo plis
Responder Citando
  #2 (permalink)  
Antiguo 15 de junio,2005, 09:44
adlorenzo
Guest
 
Mensajes: n/a
Predeterminado en la linea de esta pregunta,

hola, buenos días.. estoy un poco agobiado con esto, la verdad es que la pregunta se las trae espero que tengas un poco de paciencia conmigo y puedas echarme una manita

Tengo desarrollada una aplicacion aspx con SQL SERver, una vez terminada el cliente me ha pedido que la pase a ORacle. Ya lo tengo todo preparado pero me he encontrado con la siguiente dificultad.

Con SQL server tenía el campo clave primaria con un autonumerico que se incrementaba en una unidad. Cada vez que hacía una insert recuperaba la clave primaria de la tabla con un sentencia del tipo...

Insert into TBACCESOS (NombreA) values ('Nombre Acceso); select @@identity;

con esto conseguía que al hacer la insert me devolviera el Identificativo de la tabla donde se ha hecho la insert.

¿Cómo hacer esto con ORACLE? , bueno he seguido los pasos de un artículo que he leído y ha quedado de la siguiente manera.



PRIMERO: despues de crear la tabla TBACCESO creo el índice PK_TBACCESO

SEGUNDO: defino una secuencia

CREATE SEQUENCE S_824_1_TBACCESO INCREMENT BY 1
START WITH 62 MAXVALUE 1.0E27 MINVALUE 1 NOCYCLE
CACHE 20 NOORDER

TERCERO: he añadido un package

CREATE OR REPLACE PACKAGE IDENTITYPKG as
LastIdentity number := -1000;
end IdentityPkg;

y por ultimo forcé la asignación de un valor secuencial en un trigger asociado a la tabla de ACCESOS

CREATE OR REPLACE TRIGGER TR_S_824_1_TBACCESO
BEFORE
INSERT ON TBACCESO FOR EACH ROW begin
select S_824_1_TBACCESO.NextVal
into :new.IDACCESO
from DUAL;
IdentityPkg.LastIdentity := :new.IDACCESO;
end;

bien con todo esto consigo definir la clave primaria y que ésta se autoincremente en una unidad cada vez que hago la insert. PERO... lo que no consigo, bueno lo que no se es hacer es que me devuelva el valor que ha insertado en la clave primaria. De tal modo que al hacer la insert pueda recoger el valor de la clave primaria. Se que tiene que estar guardado el package pero no se como leerlo

estoy un poco desesperado, yo estoy un poco pez con oracle y no se por donde tirar..... cualquier genero de ayuda será bienvenida

Muchas gracias por todo
Responder Citando
  #3 (permalink)  
Antiguo 28 de junio,2005, 16:04
novato
Guest
 
Mensajes: n/a
Predeterminado triggers

Hola:
Esque estoy haciendo un trabajo y tengo que hacer unos triggers pero me dan error si alguien me pudiese ayudar por favor!!!!!

1.Para almacenar el usuario y la fecha en la que se realiza cualquier modificación
sobre la tabla en la que se almacena la clasificación de los Grandes Premios

create or replace trigger almacenaUsuarioFecha
before insert or update on granpremio
for each row
declare
begin
:NEW.fecha_actualiza:=sysdate;
:NEW.usuario_actualiza:=user;
if inserting then
:new.fecha_creacion:=new.fecha_actualiza;
:new.usuario_creacion:=new.usuario_actualiza;
end if;
end almacenaUsuarioFecha;

2. Para almacenar en un histórico cualquier movimiento que se produzca en la
tabla con las puntuaciones de los Grandes Premios.
Alguien me puede decir como hacerlo???? lo agradeceria mucho .
SalU2
Responder Citando
Respuesta

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Las caritas están Activado
El codigo [IMG] está Activado
Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado
Ir al Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Re: error en DTS marta sql 1 27 de abril,2005 12:08
Re: error en DTS m sql 1 27 de abril,2005 12:06
Re: error en DTS raul sql 1 27 de abril,2005 12:05
Re: error en DTS sql 0 27 de abril,2005 12:03
Error en base de datos "error (-2147217904)" bi23471 visual basic 1 01 de enero,1970 04:16

Programacion : LWPI Solorecursos I programacion I abcdatos I TrucosTecnicos I servicios gratisI ofertas de ADSL Ipueblos20
Areas exclusivas:cursosIofertasIadslIwebtutoriales ISMSareaItutorialesItrucos de windows IgooglemaniaI programatium.netIcompras
noticias: SaludIOcio/cineIMusicaIMotorIDeportes IJuegos I FinanzasIMovilesIEnergiaIEcologiaITech-yIMujerIMACISaludIViajes-Pueblos
site programatium.com : site1 - site2 - site3 - site4 - site5 - site6 - site7 - site8
manuales Sugiere un manual para esta seccion
who's online
Linkanos
www.programatium.com© 1999 - web esta optimizada para Microsoft explorer 6.0
tutoriales

Content Relevant URLs by vBSEO 3.2.0