Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Insertar datos provenientes de una tabla con llaves compuestas

Estas en el tema de Insertar datos provenientes de una tabla con llaves compuestas en el foro de SQL Server en Foros del Web. Saludos amigos, quisiera saber quien me ayuda con el siguiente problema: tengo las siguientes tablas: CREATE TABLE [Materias] ( [codMateria] INTEGER IDENTITY(1,1) NOT NULL, [NomMateria] ...
  #1 (permalink)  
Antiguo 14/04/2012, 21:35
 
Fecha de Ingreso: abril-2012
Mensajes: 11
Antigüedad: 12 años
Puntos: 0
Insertar datos provenientes de una tabla con llaves compuestas

Saludos amigos, quisiera saber quien me ayuda con el siguiente problema:
tengo las siguientes tablas:

CREATE TABLE [Materias] (
[codMateria] INTEGER IDENTITY(1,1) NOT NULL,
[NomMateria] VARCHAR(50) NOT NULL,
CONSTRAINT [PK_Materias] PRIMARY KEY ([codMateria])
)

CREATE TABLE [Grados] (
[CodGrado] INTEGER IDENTITY(1,1) NOT NULL,
[Descripcion] VARCHAR(50) NOT NULL,
[Fecha] DATE default getdate() NOT NULL,
CONSTRAINT [PK_Grados] PRIMARY KEY ([CodGrado])
)

CREATE TABLE [Materias_Grado] (
[codMateria] INTEGER NOT NULL,
[CodGrado] INTEGER NOT NULL,
CONSTRAINT [PK_Materias_Grado] PRIMARY KEY ([codMateria], [CodGrado])
FOREIGN KEY ([CodGrado]) REFERENCES [Grados] ([CodGrado])
FOREIGN KEY ([codMateria]) REFERENCES [Materias] ([codMateria])
)
GO

CREATE TABLE [Inscripcion] (
[CodMatricula] INTEGER IDENTITY(1,1) NOT NULL,
[Fecha] DATETIME default getdate() NOT NULL,
[NIE] INTEGER NOT NULL,
[codMateria] INTEGER NOT NULL,
[CodGrado] INTEGER NOT NULL,
CONSTRAINT [PK_Inscripcion] PRIMARY KEY ([CodMatricula])
FOREIGN KEY ([codMateria], [CodGrado]) REFERENCES [Materias_Grado] ([codMateria],[CodGrado])
)
GO



lo que necesito hacer es insertar en la tabla inscripcion el codGrado y el codMateria pero solamente me insertar un codMateria y necesito que se inserten todos los que pertenescan al mismo codGrado.
por ejemplo si tengo primer Grado el cual tiene 4 materias, pero al insertar esos datos a la tabla inscripcion solo he podido hacer que se inserte una materia.

espero alguien me pueda ayudar.

este es el procedimiento almacenado que estoy usando para insertar en la tabla Incripcion

CREATE procedure [dbo].[spInscripcion]
@nie int,
@codmateria int,
@codGrado int
as
begin
insert into Inscripcion(NIE, codMateria, CodGrado)
values (@nie, @codmateria, @codGrado)
  #2 (permalink)  
Antiguo 16/04/2012, 08:07
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Insertar datos provenientes de una tabla con llaves compuestas

En ese insert nada mas insertas un valor el que le pasas si quieres que se inserten los valores como dices podrias probar algo asi:


insert into tabla
select datos from tabla

asi insertarias lo que necesitas :)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:05.