Creación de tablas como dbo

21/05/2006 - 20:10 por ArturoT | Informe spam
Hola amigos, tengo un problema al momento de crear una tabla en mi BD el
nombre de mi BD es Genesys, el usuario que he creado en mi BD es genesys y es
dbo de la base de datos en mención, pero la forma que tengo para la creación
de algunas tablas en mi BD es con un aplicativo que tiene el codigo cerrado
por lo que no puedo modificar este aplicativo de ninguna manera, este
aplicativo al parecer al momento de crear la tabla en la base de datos lo
hace de esta manera por ejemplo:
Create table Prueba (campo varchar(10))
y no asi para que cree como propietario el dbo
Create table dbo.Prueba (campo varchar(10))
Al crearlo de la primera forma esta creando la tabla con propietario genesys
pero si yo utilizo otro usuario para conectarme a mi BD diferente al usuario
genesys no me reconoce la tabla Prueba por lo que tendria que poner de la
siguiente forma para poder consultarla:
Select * from genesys.prueba
Ahora bien he hecho lo siguiente para absolver el problema, estoy dando el
alias a mi user genesys de dbo de la siguiente forma
Use Genesys
sp_addalias 'genesys','dbo'
De esta forma si ejecuto el script
Create table Prueba (campo varchar(10))
Me crea la tabla ya como propietario el dbo lo cual es lo que yo necesito,
el problema que tengo es que al tener este perfil puedo tener acceso a
cualquiera de las bases de datos alojadas en mi servido, incluso puedo crear
objetos, eliminarlos, por ejemplo si ejecuto el script
Create table Prueba (campo varchar(10))
Lo crea y como propietario le pone Guest pero para consultarla no es
necesario poner Guest.Prueba basta con poner Prueba al igual que en dbo.
En resumen mi problema es el siguiente es lo siguiente
¿Hay forma de que mi usuario genesys siendo dbo de la base de datos pueda
crear los objetos con propietario dbo sin que yo lo indique especificamente
es decir ejecutando el siguiente script "Create table Prueba (campo
varchar(10))"? y si darle el alias de dbo a mi usuario

Muchas gracias por su atención
 

Leer las respuestas

#1 ArturoT
21/05/2006 - 20:31 | Informe spam
Ojo amigos tampoco puedo poner el rol de System Administrator a mi usuario
genesys, esto por que no le me permitirian por seguridad.

Muchas gracias, espero su respuesta, es urgente :(

"ArturoT" escribió:

Hola amigos, tengo un problema al momento de crear una tabla en mi BD el
nombre de mi BD es Genesys, el usuario que he creado en mi BD es genesys y es
dbo de la base de datos en mención, pero la forma que tengo para la creación
de algunas tablas en mi BD es con un aplicativo que tiene el codigo cerrado
por lo que no puedo modificar este aplicativo de ninguna manera, este
aplicativo al parecer al momento de crear la tabla en la base de datos lo
hace de esta manera por ejemplo:
Create table Prueba (campo varchar(10))
y no asi para que cree como propietario el dbo
Create table dbo.Prueba (campo varchar(10))
Al crearlo de la primera forma esta creando la tabla con propietario genesys
pero si yo utilizo otro usuario para conectarme a mi BD diferente al usuario
genesys no me reconoce la tabla Prueba por lo que tendria que poner de la
siguiente forma para poder consultarla:
Select * from genesys.prueba
Ahora bien he hecho lo siguiente para absolver el problema, estoy dando el
alias a mi user genesys de dbo de la siguiente forma
Use Genesys
sp_addalias 'genesys','dbo'
De esta forma si ejecuto el script
Create table Prueba (campo varchar(10))
Me crea la tabla ya como propietario el dbo lo cual es lo que yo necesito,
el problema que tengo es que al tener este perfil puedo tener acceso a
cualquiera de las bases de datos alojadas en mi servido, incluso puedo crear
objetos, eliminarlos, por ejemplo si ejecuto el script
Create table Prueba (campo varchar(10))
Lo crea y como propietario le pone Guest pero para consultarla no es
necesario poner Guest.Prueba basta con poner Prueba al igual que en dbo.
En resumen mi problema es el siguiente es lo siguiente
¿Hay forma de que mi usuario genesys siendo dbo de la base de datos pueda
crear los objetos con propietario dbo sin que yo lo indique especificamente
es decir ejecutando el siguiente script "Create table Prueba (campo
varchar(10))"? y si darle el alias de dbo a mi usuario

Muchas gracias por su atención





Preguntas similares