Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > SQL Server

Respuesta
 
Herramientas Desplegado
Antiguo 24-mar-2008, 11:47   #1 (permalink)
sabao ha deshabilitado el karma
 
Fecha de Ingreso: abril-2006
Mensajes: 43
Cool como asocio 2 tablas de esta manera

Hola denuevo , tengo una
tabla
equipos
id_equipo primary key
nombre
ip
...
...
...
.etc

usuarios
id_usuario primary key
nombre
user_windows
contraseña
id_equipo foreign key id_equipo references id_equipo(equipos)


la tabla equipo ya tiene datos

con este procedimiento trato de asociarlas pero no me funciona
pq tengo como parametro de entrada para asociarlas la ip, para que pueda asociar las primary key de equipos con la foreign de usuarios.

y se pueda llenar los campos de usuarios y enlazar las llaves.

Código PHP:
create proc ingresa_usuario
 
@ip varchar(15)
,@
nombre varchar (50)
,@
user_windows varchar (50)
,@
fecha datetime
,@contrasena varchar(50)


as 
begin
declare @id_equipo int
select 
@id_equipo=equipos.id_equipo
    from equipos
where  
@ip=equipos.ip
end

begin
select 
@fecha=getdate()
from usuarios
end

begin
 insert into usuarios
(nombre,user_windows,fecha,contrasena,id_equipo)
values (@nombre,@user_windows,@fecha,@contrasena,@id_equipo)
end 
Espero ayuda .

Última edición por sabao; 24-mar-2008 a las 12:58.
sabao está desconectado   Responder Citando
Antiguo 24-mar-2008, 12:57   #2 (permalink)
Colaborador
iislas ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 1.222
Re: como asocio 2 tablas de esta manera

Primero, la comparacion del where, debe ser en orden diferente

WHERE equipos.ip = @ip

Segunda, en el insert, has mencion a la fecha, no requieres de una variable:

insert into usuarios
(nombre,user_windows,fecha,contrasena,id_equipo)
values (@nombre,@user_windows,GETDATE(),@contrasena,@id_e quipo)
iislas está desconectado   Responder Citando
Antiguo 24-mar-2008, 13:28   #3 (permalink)
sabao ha deshabilitado el karma
 
Fecha de Ingreso: abril-2006
Mensajes: 43
Re: como asocio 2 tablas de esta manera

Hola gracias , pero tengo un duda mas , al insertar el primer registro la fecha me que ingresa no es la actual sino que asi 1900-01-01 00:00:00.000 , y al ingresar el 2 registrola fecha se ingresa correctamento o sea actual , que sera?? , saludos
sabao está desconectado   Responder Citando
Antiguo 24-mar-2008, 14:17   #4 (permalink)
Colaborador
iislas ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 1.222
Re: como asocio 2 tablas de esta manera

Esta instruccion, no tiene logica

select @fecha=getdate()
from usuarios

Por tanto, el valor del parametro @fecha estara, o biene en NULL o utilizara '1900-01-01 00:00:00.000'

Saludos.
iislas está desconectado   Responder Citando
Antiguo 25-mar-2008, 05:03   #5 (permalink)
sabao ha deshabilitado el karma
 
Fecha de Ingreso: abril-2006
Mensajes: 43
Re: como asocio 2 tablas de esta manera

Cita:
Iniciado por iislas Ver Mensaje
Esta instruccion, no tiene logica

select @fecha=getdate()
from usuarios

Por tanto, el valor del parametro @fecha estara, o biene en NULL o utilizara '1900-01-01 00:00:00.000'

Saludos.
Hola la deje asi pero al ingresare el p´rimer registro me da la fecha valor 1900-01-01 00:00:00.000'

Código PHP:
create proc ingresa_usuario
 
@ip varchar(15)
,@
nombre varchar (50)
,@
user_windows varchar (50)
,@
contrasena varchar(50)
,@
id_equipo int

as begin
select
@id_equipo=equipos.id_equipo
from equipos
where
equipos
.ip=@ip

 insert into usuarios
(nombre,user_windows,fecha,contrasena,id_equipo)
values (@nombre,@user_windows,getdate(),@contrasena,@id_equipo)
end 
sabao está desconectado   Responder Citando
Respuesta
No hay votos aún.


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
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 19:32.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93