Pregunta

He intentado crear un Diagrama de base de datos con SQL Server 2008, pero se produce un error:

  

objetos de soporte del diagrama de base de datos   no se puede instalar porque este   la base de datos no tiene un propietario válido.   Para continuar, primero utilice la página Archivos   del cuadro de diálogo Propiedades de la base de datos   o la instrucción ALTER AUTORIZACIÓN   para establecer el propietario de la base a una válida   inicio de sesión, a continuación, añadir el diagrama de la base de datos   objetos de soporte.

A continuación, He intentado lo siguiente:

EXEC sp_dbcmptlevel 'Ariha', '90';
GO
ALTER AUTHORIZATION ON DATABASE::Ariha TO [WIN-NDKPHUPPNFL\Administrator]
GO
USE Ariha
GO
EXECUTE AS USER = N'dbo' REVERT
GO

A continuación erorr aparece:

  

Msg 15404, nivel 16, estado 11, línea 1   No se pudo obtener información acerca   Windows NT / grupo de usuarios   'WIN-NDKPHUPPNFL \ Administrador', el error   código de 0x534.

El problema es el nombre del PC se ha convertido en "DevPC" También ha cambiado esto en el script de actualización, pero sigue siendo el mismo error 15404.

¿Qué puedo hacer para corregir este error molesto?

¿Fue útil?

Solución

Debe tener en cuenta la cuenta de autenticación de SQL para la propiedad de base de datos; a continuación, usted no tiene que preocuparse acerca de las cuentas que van y vienen, bases de datos o instancias que se mueven a diferentes servidores, y su próximo cambio de nombre de PC. Tengo varios sistemas en los que usamos:

ALTER AUTHORIZATION ON DATABASE::Ariha TO [sa];

O si usted quiere cambiar el propietario a la cuenta de administrador local, entonces debería ser:

ALTER AUTHORIZATION ON DATABASE::Ariha TO [DevPC\Administrator];

Debido a que el cambio de nombre a la máquina DevPC ha eliminado la cuenta local que solía ser llamado WIN-ND...\Administrator y esto también ha invalidado el actual propietario de la base de datos.

Si SELECT @@SERVERNAME; no es exacta (que debería decir DevPC), a continuación, con el fin de asegurarse de que su cambio de nombre de servidor se ha afianzado dentro de SQL Server, también es posible que desee emitir el siguiente:

EXEC sp_dropserver @server = N'old server name';
GO
EXEC sp_addserver @server = N'DevPC', @local = N'local';
GO

Otros consejos

En SQL Server Management Studio hacer lo siguiente:

  1. Haga clic derecho en su base de datos, elegir propiedades
  2. Ir a la Página de opciones
  3. En el menú desplegable de la derecha marcado como "nivel de compatibilidad" elegir "SQL Server 2005 (90)" 3-1. seleccione "SQL Server 2008" si recibe un error de comparabilidad.
  4. Vaya a los archivos de página
  5. Introduzca "sa" en el cuadro de texto propietario. 5-1 o haga clic en los puntos suspensivos (...) y elegir un legítimo propietario.
  6. Hit Aceptar

después de hacer esto, ahora será capaz de acceder a los diagramas de base de datos.

introducir descripción de la imagen aquí

USE [ECMIS]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO

Funciona.

Enter "SA" en lugar de "sa" en el cuadro de texto propietario. Esto funcionó para mí.

Yo tenía el mismo problema.
Yo quería ver mi diagrama, que he creado el mismo día en el trabajo, en casa. Pero yo no podía a causa de este mensaje.
Descubrí que el propietario de la base de datos era el usuario de la computadora -como se esperaba. pero dado que el equipo se encuentra en el dominio de la empresa, y no estoy conectado a la red de la empresa, la base de datos no se pudo resolver el propietario.

Así que lo que hice es cambiar el propietario a un usuario local y funcionó !!
Espero que esto ayude a alguien.

Se cambia el usuario, haga clic en la base de datos, propiedades, archivos, propietario

Esto lo fijó para mí. Se establece el propietario se encuentra en la sección de la ventana de propiedades de la base de los 'ficheros', y está como un guión por el estudio de gestión.

USE [your_db_name]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO

De acuerdo con la documentación href="http://technet.microsoft.com/en-us/library/ms178630(v=sql.110).aspx" sp_changedbowner este es obsoleto ahora.

Sobre la base de la respuesta de Israel. La respuesta de Aaron es la variación no desuso de esta.

Seleccione su base de datos - Click derecho - Seleccione Propiedades

Seleccione ARCHIVO en el lado izquierdo de la página

En el cuadro de PROPIETARIO, seleccione el botón que tiene tres puntos (...) en ella

A continuación, seleccione el usuario ‘sa e Haga clic en Aceptar

Me acaba de experimentar esto. Había leído las sugerencias de esta página, así como las sugerencias de la Autoridad de SQL (que es la misma cosa) y ninguno de los anteriores trabajado.

Al final, me quita la cuenta y recreado (con el mismo nombre de usuario / contraseña). Al igual que todos los temas fueron.

Lamentablemente, esto significa que no sé lo que salió mal, así que no puedo compartir cualquier otra cosa.

1.Haga clic en su base de datos, 2. A continuación, seleccione Propiedades. 3.Select la opción de elegir los niveles de compatibilidad SQL 2008 [100] si se está trabajando con Microsoft SQL 2008.

4.Then seleccionar el archivo y escribir (sa) en el cuadro de texto del dueño

100% funciona para mí.

Una forma más fácil de resolver estas cuestiones sería hacer clic derecho el nombre de su base de datos, seleccione "Nueva consulta", escriba " 'sa' sp_changedbowner exec" y ejecutar la consulta. A continuación, va a ser bueno para ir.

se debe introducir como administrador con el derecho para estudio de Microsoft SQL Server Management y ejecutar como administrador

Sólo es necesario para ejecutarlo en editor de consultas ALTER autorización en bases de datos :: YourDatabase A [dominio \ cuenta];

El problema real es que el propietario predeterminado (DBO) no tiene un inicio de sesión asignado a él en all.As traté de asignar el inicio de sesión sa al propietario de la base recibí otro error que indica "usuario, grupo o rol 'dbo' ya existe ... "Sin embargo, si se intenta el código que realmente funciona:.

  
    

EXEC sp_dbcmptlevel 'basedatos', '90';

         

Ir

         

ALTER autorización en bases de datos :: basedatos A "yourlogin"

         

Ir

         

utiliza [basedatos]

         

Ir

         

EJECUTAR COMO USUARIO = N'dbo' Volver

         

Ir

  

haga clic derecho en su base de datos, a continuación, seleccione Propiedades. seleccione la opción de elegir los niveles de compatibilidad SQL 2005 [90] en lugar de 2008, si se está trabajando con Microsoft SQL 2008. a continuación, seleccione el archivo y escribir (sa) en el cuadro de texto del dueño. que va a funcionar probablemente

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top