Ir al contenido principal

SQL Server 2005 - Error: Database diagram support objects cannot be installed because this database does not have a valid owner. To continue, first use the Files page of the Database Properties dialog box or the ALTER AUTHORIZATION statement to set the database owner to a valid login, then add the database diagram support objects.

Ya van varias ocasiones que me sucede que cuando quiero por comodidad tener el diagrama de la base de datos me sale el error en mención (título del escrito). Al principio fue una calamidad resolver este error, pero ya no demoro ni el minuto corrigiendolo. Hay varias posibles soluciones, pero aqui solo te daré dos que son las más probables:

Solución 1:

En el SQL Server Management Studio hacer lo siguiente:

  1. Botón derecho en tu Base de Datos, escoge propiedades.

  2. Vete a la opción Opciones de Página (Options Page)

  3. En la lista desplegable (Dropdown) títulada Nivel de Compatibilidad (Compatibility Level) escoge la opción "SQL Server 2005(90)".


De no funcionarte la solución 1, aplica la siguiente:

En la ventana de Query del SQL Server Management Studio, ejecuta la siguiente instrucción:

EXEC sp_dbcmptlevel 'Tu_BD', '90';
go
ALTER AUTHORIZATION ON DATABASE::Tu_BD TO "sa"
go
use [Tu_BD]
go
EXECUTE AS USER = N'dbo' REVERT
go


Están han sido las dos soluciones que siempre he aplicado cuando me sale este error. De no funcionarte, deberías buscarte otra alternativa.

Comentarios

Entradas populares de este blog

Consultas SQL basadas en fecha y/o hora

Manejando SQL Server 2005, me encontre que tratando hacer consultas basadas en fechas, obtenía como resultado nada (empty). Esto se debía a que no tenía claro como trabajan los tipos de dato datetime y smalldatetime. Estos dos tipos de datos son muy similares, se diferencia en que datetime es más detallado a la hora de almacenar la fecha. Estas diferencias pueden ser vistas en la siguiente tabla: Tipo Minimo Maximo Precision datetime Ene 1, 1753 media-noche Dic 31, 9999 23:59:59.997 (0.003 segundos hasta la media-noche) Más cercano 3.33 millisegundos smalldatetime Ene 1, 1900 media-noche Jun 6, 2079 23:59 (un minuto hasta la media-noche) Más cercano al mínuto Ambos, representan una fecha y hora que es igual al número de días en relación a una fecha base. En SQL Server la fecha base es la medianoche del 1 de Enero de 1900 . Observando la tabla, el tipo de dato smalldatetime, puede solo representar fechas desde esta fech...

AJAX: Redireccionar a una nueva página después de haber iniciado sesión

Estaba trabajando en una app, la cual quería que mostrará un mensaje cada vez que el usuario por error introducía el nombre de usuario o contraseña inválida. Bueno esto no fue díficil, ya que conozco como hacerlo. Pero lo que en ese momento no habia pensado era lo contrario, si el usuario introduce correctamente sus datos, no debo mostrar ningún mensaje. Lo que debo hacer es redireccionar al usuario a su pantalla inicial luego del logeo.

Ajax - Tedioso Error: "Could not complete the operation due to error c00ce514"

Yo tuve de 9:30 AM hasta las 2:00 PM del día de hoy tratando de resolver este bendito error. Busque en Google y nada, asi que me tome la molestía de resolver este problema. Revise las funciones Ajax habitual, donde uno hace el statechanged y luego el open del objeto XmlHttp. Estas son las mías (lo hago para dar una referencia más clara): xmlHttp.onreadystatechange = function() { stateChanged(xmlHttp, placeHolder) } xmlHttp.open(method, url, true); Y nada. Hasta que me pude dar cuenta que en mi caso el bendito error salia porque el mensaje que queria desplegar en el "Place Holder" (no se como decirlo en español), tenía tilde y la letra Ñ-ñ. Asi que al parecer el Ajax no se lleva bien con caracteres fuera del alfabeto gringo. Te tocará a ti, decirme si realmente esto es un bugs o existe alguna forma de configurar en cualquiera de las capaz involucradas en el funcionamiento del Ajax para que este problem no se presente.