visual una tabla studio paso mostrar management hacer datos crear conectar con como sql-server visual-studio-2010 database-project

sql server - una - Visual Studio 2010-Proyecto de base de datos con base de datos importada no puede construir



crear base de datos en visual studio 2017 (3)

Estoy mirando el proyecto de base de datos en VS2010, la idea es que quiero algo que pueda usar para hacer un seguimiento del esquema de la base de datos (en control de fuente) y la capacidad de generar scripts de "nueva instalación" y cambiar los scripts.

Cuando creo un nuevo asistente de proyecto de base de datos e importo mi esquema de base de datos existente, no se "compilará". Me sale el error:

SQL03006: Usuario: [escáner] tiene una referencia no resuelta para Iniciar sesión [escáner].

El SQL que genera este error:

CREAR USUARIO [escáner] PARA INICIAR SESIÓN [escáner];

El "escáner" del usuario es un inicio de sesión definido en la base de datos que importé. No tengo idea de qué me está molestando, y Google no está tirando demasiado. ¿Algunas ideas?


El inicio de sesión está realmente definido en la base de datos maestra de la instalación del servidor. La instrucción CREATE USER debe apuntar a un inicio de sesión existente, de lo contrario, genera errores. El proyecto de base de datos no tiene conocimiento del inicio de sesión en el nivel del servidor. O puede crear un Proyecto de servidor para manejar los Inicios de sesión, o puede desactivar la comprobación de Objetos de seguridad en su Proyecto de base de datos. Consulte la respuesta de Demetri M para obtener más detalles: http://social.msdn.microsoft.com/Forums/eu/vstsdb/thread/1f8226fe-b791-4344-8735-3d38307e8664


Estoy usando Visual Studio 2012 para un proyecto de base de datos de SQL Server 2008 R2. Las opciones enumeradas por @Judah ya no parecen funcionar.

Ahora parecen ser Configuraciones que configuras al hacer una Comparación de esquemas:

Haz clic derecho en el proyecto de la base de datos> Elige ''Comparación de esquemas''> Selecciona el ícono de ajustes ''Configuración''> Selecciona la pestaña ''Tipos de objetos''>

Los inicios de sesión no tienen alcance de aplicación. Los roles de la base de datos, los permisos, las membresías de roles y los usuarios tienen un ámbito de aplicación.

Desafortunadamente, la única forma que puedo encontrar para preservar estos es guardar la comparación del esquema. Esto puede ser un poco incómodo si está compartiendo esto en un equipo y desea configuraciones de proyecto / base de datos (o servidor) para cualquier esquema de comparación.

Sin embargo, hace el trabajo bien.


Puede cambiar los scripts de usuario creados para crear roles. Por lo tanto, en lugar de "Crear usuario userName para el inicio de sesión loginName;"

use "Create Role [userName] authorization dbo;"

Esto es un truco, pero mientras no tenga que tratar con usuarios y roles en su proyecto, puede hacer lo siguiente:

GRANT EJECUTAR EN OBJECT :: [dbo]. [Sp_name] TO [userName];