Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   SQL Server (http://www.forosdelweb.com/f87/)
-   -   como asocio 2 tablas de esta manera (http://www.forosdelweb.com/f87/como-asocio-2-tablas-esta-manera-568736/)

sabao 24/03/2008 11:47

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 .

iislas 24/03/2008 12:57

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)

sabao 24/03/2008 13:28

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

iislas 24/03/2008 14:17

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.

sabao 25/03/2008 05:03

Re: como asocio 2 tablas de esta manera
 
Cita:

Iniciado por iislas (Mensaje 2334564)
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 



La zona horaria es GMT -6. Ahora son las 07:41.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.