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

Permisos SQL 2005

Estas en el tema de Permisos SQL 2005 en el foro de SQL Server en Foros del Web. Buenas, He creado un usuario en sql 2005, su login, la tabla es propietaria de dicho usuario, con su schema. Al pasar lo siguiente: USE ...
  #1 (permalink)  
Antiguo 30/09/2010, 05:07
 
Fecha de Ingreso: enero-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Permisos SQL 2005

Buenas,
He creado un usuario en sql 2005, su login, la tabla es propietaria de dicho usuario, con su schema.
Al pasar lo siguiente:

USE MiBase;
Declare @Tabla varchar(50)
Declare @Usuario varchar(50)
Declare CursorUsuarios Cursor
For SELECT DISTINCT OC.name AS Tabla
FROM sysobjects as OC
WHERE OC.type = 'U'
ORDER BY OC.name
Open CursorUsuarios
Fetch Next
From CursorUsuarios Into @Tabla
While @@FETCH_STATUS = 0
Begin
if @Tabla<>'dtproperties'
BEGIN
select @Usuario='dbo' + '.' + @Tabla
exec sp_changeobjectowner @Usuario, 'MyAdmin'
END
Fetch Next
From CursorUsuarios Into @Tabla
End
Close CursorUsuarios
Deallocate CursorUsuarios

las tablas ya se ven como MyAdmin.nombretabla en vez de dbo.nombretabla, el problema es que una vez echo esto para realizar cualquier consulta he de poner el user.nombredelatabla y antes no hacia falta. como podría hacerlo para no tener que poner el prefijo del usuario.

Gracias.
  #2 (permalink)  
Antiguo 30/09/2010, 07:27
Avatar de gustavoh10  
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 3 meses
Puntos: 3
Respuesta: Permisos SQL 2005

Cita:
Iniciado por deb82 Ver Mensaje
Buenas,
He creado un usuario en sql 2005, su login, la tabla es propietaria de dicho usuario, con su schema.
Al pasar lo siguiente:

USE MiBase;
Declare @Tabla varchar(50)
Declare @Usuario varchar(50)
Declare CursorUsuarios Cursor
For SELECT DISTINCT OC.name AS Tabla
FROM sysobjects as OC
WHERE OC.type = 'U'
ORDER BY OC.name
Open CursorUsuarios
Fetch Next
From CursorUsuarios Into @Tabla
While @@FETCH_STATUS = 0
Begin
if @Tabla<>'dtproperties'
BEGIN
select @Usuario='dbo' + '.' + @Tabla
exec sp_changeobjectowner @Usuario, 'MyAdmin'
END
Fetch Next
From CursorUsuarios Into @Tabla
End
Close CursorUsuarios
Deallocate CursorUsuarios

las tablas ya se ven como MyAdmin.nombretabla en vez de dbo.nombretabla, el problema es que una vez echo esto para realizar cualquier consulta he de poner el user.nombredelatabla y antes no hacia falta. como podría hacerlo para no tener que poner el prefijo del usuario.

Gracias.
Supongo que porque el esquema dbo esta seteado por default.
No estoy seguro donde se hace esto, ya que siempre use dbo, pero podes ver si en las propiedades del esquema hay algo.

Etiquetas: permisos, 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 17:51.