Usuarios en SQL Server

15/10/2003 - 19:24 por Franci | Informe spam
Hola grupo,

estoy trabajando con vb 6.0 y SQL Server 2000, tengo que guardar una
información por cada usuario que exista en la base de datos, he intentado
añadir los campos en la tabla 'sysusers' pero no me deja, luego he creado
una nueva tabla y he intentado relacionarla (1 a 1) con 'sysusers' pero
tampoco me deja. Supongo que no se puede modificar nada de la tabla
'sysusers'. ¿O hay alguna forma de hacer lo anteriormente dicho?

Si no se puede, ¿alguien puede decirme como puedo relacionar de alguna
forma automática los usuarios con los datos de los usuarios que necesito
guardar? Es decir, que si se crea un usuario se cree un registro donde
guardar los datos, si se elimina un usuario se eliminen también los datos
que tenía ese usuario, etc...

Gracias de antemano

Saludos

_______
Franci

Preguntas similare

Leer las respuestas

#1 Javier Loria
16/10/2003 - 01:42 | Informe spam
Hola Franci:
Efectivamente no se puede/debe modificar la tabla de SYSUSERS.
No estoy seguro de lo que del requerimiento de "relacionar los datos de
los usuarios que necesito guardar?".
Si lo que quieres es registrar quien inserta, borra o actualiza los
datos puedes usar una columna un DEFAULT con la funcion SYSTEM_USER, y/o
usar TRIGGERS/PROCEDIMIENTOS ALMACENADOS para mantener los datos.
Si se elimina un usuario podrias utilizar un JOB (NO puedes usar
TRIGGERS sobre las tablas del sistema), para eliminar los datos. O podrias
usar vistas para filtrar los datos de los usuarios borrados.
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Franci escribio:
Mostrar la cita
#2 Franci
20/10/2003 - 21:10 | Informe spam
gracias por la información Javier, te explico, la aplicación es
multiusuario, un usuario cualquiera puede crear unos expedientes, el usuario
que crea el expediente puede dar permiso para que otros usuarios puedan
tener acceso a ese expediente. Entonces quería relacionar la tabla sysusers
con la de los expedientes y además los usuarios deben estar colegiados y
quería guardar el nº de colegiado en la tabla de los usuarios. Espero
haberme explicado.

Gracias otra vez y saludos.

"Javier Loria" escribió en el mensaje
news:
Mostrar la cita
de
Mostrar la cita
#3 Javier Loria
21/10/2003 - 20:16 | Informe spam
Hola Franci:
Siempres es "peligroso" escribir codigo contra las Tablas del Sistema,
sobre todo porque es probable que en la proxima version de SQL cambien y
debas reescribir el codigo.
Si siempre quieres hacerclo, como verias algo como:
a) Crear una Tabla de Usuarios con UID del Usuario de SQL, el Numero de
Colegiado, y cualquier otro atributo de usuario. Definiria como Llave
Primaria el NumeroColegiado, y el UID como UNIQUE.
b) Crear una Tabla de Permisos con Llave Primaria: NumColegiado,
NumExpediente y eventualmente un Nivel de Acceso, si se requiere.
b) Triggers de Insercion y Actualizacion que verifiquen que el UID
exista en la Tabla de SysUsers.
c) Procedimiento de Borrado de Usuarios que borra al usuario de la BD y
de la Tabla de Usuarios.
d) JOB que revisa la integridad entre las tabla (por no poder hacer un
FK entre SysUsers y Usuarios.

Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Franci escribio:
Mostrar la cita
Ads by Google
Search Busqueda sugerida