Nueva pregunta

Pregunta:

Fecha: 24-11-2016 09:53:58 (En Español)

¿Cómo generar un "código certificado" a nivel base de datos, compuesto por 3 columnas de diferentes tablas?[No resuelta]

Tengo 03 tablas:

1.-
 CREATE TABLE [dbo].[Curso]
(
[idcurso] [int] NOT NULL IDENTITY(1, 1),
[nombrecu] [varchar] (50) COLLATE Modern_Spanish_CI_AS NULL,

)
GO


2.-
create table [inscripcionParticipante]
(
[codigoMoviCur] [int] NOT NULL IDENTITY(1, 1),
[codigopar] int,
[Codigocupo] int,
[codigoCategoria] int,
[codigoCertificado] char(8) not null,


3
create table [persona]
(
[idper] [int] NOT NULL IDENTITY(1, 1),
[nom] string(20) not null,
[apellidos] string(20) not null,
[dni] int,


Mi consulta es lo siguiente: ¿cómo generar mi codigo certificado, el cual es un CONCAT de "idCurso" de la tabla CURSO con el campo "dni" de la tabla persona y guardarlos en el campo "codigoCertificado" de la tabla inscripcionParticipante

Quisiera generar ese código a nivel de base de datos.
Etiquetas: Base de Datos - Desarrollo - Pregunta - Query - SQL Server Votos: -1 - Respuestas: 1 - Vistas: 8 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 08-02-2017 08:26:20 Pues tu pregunta no es muy clara y el DDL que proporcionas no clarifica en nada así que nos basaremos en suposiciones y supondremos que tienes 3 entidades:

    Curso (tabla Curso)
    Persona (tabla Persona)
    Inscripcion (tabla InscripcionParticipante)

    Supongo que la tabla InscripcionParticipante liga a una persona con un curso.

    Entonces lo que quieres hacer es que cuando generas una inscripción quieres que el campo InscripcionParticipante.codigoCertificado se llene con una cadena especial que consiste en concatenar Curso.idCurso y Persona.dni

    Sin irme más lejos y dándote la respuesta más simple (cumpliendo con tu deseo de que esto lo maneje la base de datos) mi sugerencia es que crees un trigger para el BEFORE INSERT y probablemente para el BEFORE UPDATE donde generarás el código que necesitas.

    Dale una leída a este artículo sobre triggers en MySQL
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com