none
Error con la base de datos RRS feed

  • Pregunta

  • Buenas,

    estoy haciendo un proyecto y quiero que al hacer el ejecutable se adjunte la base de datos. Mi proyecto esta hecho en capas y en wpf. Como lo hice la primera vez no me la adjuntaba. Entonces ahora lo que he hecho es una base de datos basadas en servicio en mi capa de dataacess. Pero al ahora de ejecutarlo me sale el siguiente error y no encuentro como solucionarlo.

    Error al intentar adjuntar una base de datos nombrada automáticamente para el archivo C:\\XAlde\\XAlde\\XAlde_WPFPresentacion\\bin\\Debug\\XAldeBD.mdf. Ya existe una base de datos con el mismo nombre, no se puede abrir el archivo especificado o se encuentra en un recurso compartido UNC.

    Espero que me puedan ayudar.

    Muchas gracias 

    • Cambiado Joyce_AC martes, 16 de mayo de 2017 18:52
    lunes, 15 de mayo de 2017 6:52

Respuestas

  • hola

    >>La base de datos la tengo en la capa de acceso a datos y el mdf me sale en el debug de dicha capa

    en ese caso deberias cambiarla de lugar y ponerla en el proyecto de presentacion, porque al ser este el cual inicia es alli donde intentara ubicarla

    o sino crear un Build Event, en las propiedades del proyecto de la capa de datos que copie la db al \bin\Debug del proyecto de presentacion

    >>Por lo que me comentáis debería crear la base de datos en la capa de presentación y no en la de acceso a datos. ¿Es así?

    si

    >>Ya existe una base de datos con el mismo nombre, no se puede abrir el archivo especificado o se encuentra en un recurso compartido UNC.

    ojo, porque que te diga que ya existe esta indicando que tienes en el servicio una db con ese nombre, deberias usar el management studio del sql server para conectarte al servicio de sql server y validarlo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Agmaza miércoles, 17 de mayo de 2017 19:03
    martes, 16 de mayo de 2017 5:46

Todas las respuestas

  • Buenas,

    estoy haciendo un proyecto y quiero que al hacer el ejecutable se adjunte la base de datos. Mi proyecto esta hecho en capas y en wpf. Como lo hice la primera vez no me la adjuntaba. Entonces ahora lo que he hecho es una base de datos basadas en servicio en mi capa de dataacess. Pero al ahora de ejecutarlo me sale el siguiente error y no encuentro como solucionarlo.

    Error al intentar adjuntar una base de datos nombrada automáticamente para el archivo C:\\XAlde\\XAlde\\XAlde_WPFPresentacion\\bin\\Debug\\XAldeBD.mdf. Ya existe una base de datos con el mismo nombre, no se puede abrir el archivo especificado o se encuentra en un recurso compartido UNC.

    Espero que me puedan ayudar.

    Muchas gracias 

    Este nombre de archivo con esta ruta existe?

    Tienes permisos para escribir en esta carpeta?

    lunes, 15 de mayo de 2017 15:03
  • Hola Agmaza

    Ya habías creado antes una y la eliminaste? fíjate que mediante el explorador de windows si no tienes dos bases con el mismo nombre, por otro lado lo intentase ejecutando el visual studio como administrador?

    Saludos


    Si ayudé a resolver tu consulta, no olvides marcar como respuesta y/o votar como útil.

    lunes, 15 de mayo de 2017 15:17
  • Hola, podrías navegar en tu visual studio por la ruta

    Herramientas-->Opciones-->Herramientas para base de datos-->Conexiones de datos, o el que tengas de acuerdo al idioma y verificar que instancia por defecto tienes para hacer la conexión con la bd y cambiarla de ser el caso

    Luego debes hacer doble clic en el archivo .mdf  que debería estar dentro de la carpeta App_Data en la solución de VS, y debería abrise bajo las "Conexiones de datos" 


    Si la respuesta te fue útil vótala como tal,y si fue respuesta márcala.Saludos. Lima-Perú.

    lunes, 15 de mayo de 2017 16:25
  • 

    Esta es mi aplicación hecha por capas. La base de datos la tengo en la capa de acceso a datos y el mdf me sale en el debug de dicha capa. No tenia ninguna base de datos creada con ese nombre. Por lo que me comentáis debería crear la base de datos en la capa de presentación y no en la de acceso a datos. ¿Es así?

    Gracias por vuestra ayuda

    martes, 16 de mayo de 2017 5:16
  • hola

    >>La base de datos la tengo en la capa de acceso a datos y el mdf me sale en el debug de dicha capa

    en ese caso deberias cambiarla de lugar y ponerla en el proyecto de presentacion, porque al ser este el cual inicia es alli donde intentara ubicarla

    o sino crear un Build Event, en las propiedades del proyecto de la capa de datos que copie la db al \bin\Debug del proyecto de presentacion

    >>Por lo que me comentáis debería crear la base de datos en la capa de presentación y no en la de acceso a datos. ¿Es así?

    si

    >>Ya existe una base de datos con el mismo nombre, no se puede abrir el archivo especificado o se encuentra en un recurso compartido UNC.

    ojo, porque que te diga que ya existe esta indicando que tienes en el servicio una db con ese nombre, deberias usar el management studio del sql server para conectarte al servicio de sql server y validarlo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Agmaza miércoles, 17 de mayo de 2017 19:03
    martes, 16 de mayo de 2017 5:46
  • Deberías mostrarnos tu cadena de conexión. Si has establecido AttachDBFilename deberías eliminarlo. AttachDBFilename sólo se admite para archivos de datos principales con una extensión .mdf.
    Se generará un error si existe un archivo de registro en el mismo directorio que el archivo de datos y se utiliza la palabra clave 'database' al asociar el archivo de datos principal. En este caso, se ha de quitar el archivo de registro. Una vez asociada la base de datos, se generará automáticamente un nuevo archivo de registro basado en la ruta de acceso física. Revisa la documentación de Propiedad SqlConnectionStringBuilder.AttachDBFilename

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 16 de mayo de 2017 7:06
  • Muchas gracias por vuestra ayuda lo voy a intentar a ver si lo soluciono
    miércoles, 17 de mayo de 2017 9:10
  • Si tengo puesto attachDBFilename pero se puso solo al buscar la base de datos. Añadi directamente la base de datos con el visual. Si no pongo eso, ¿con que lo debo sustituir?

    Gracias

    miércoles, 17 de mayo de 2017 9:15
  • Hola Como comenté es necesario que nos expongas tu cadena de conexión. La primera vez que te conectas a la bbdd usando la opción AttachDBFilename en tu connection string,  la instancia de SQL Server Express oLocalDB instance adjunta la base de datos. Cuando te conectes a la misma bbdd en el futuro deberías usar  Initial Catalog en vez de AttachDBFilename

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    miércoles, 17 de mayo de 2017 9:23
  • Esta es mi cadena de conexion:

    Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\XAldeBD.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True

    Cuando le doy directamente sale eso.

    Saludos y gracias

    miércoles, 17 de mayo de 2017 12:11
  • Hola,

    una pregunta la ruta sobre la cual está la bbdd es superior a 127 caracteres? Prueba tambien a poner 

    Data Source=.\SQLEXPRESS;Initial Catalog=XAldeBD;Integrated Security=True;Connect Timeout=30;User Instance=True


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Propuesto como respuesta golfgti6 martes, 23 de mayo de 2017 16:06
    miércoles, 17 de mayo de 2017 12:45
  • Muchas gracias a todos, ya lo solucioné.

    Solo tuve que crear la base de datos en la capa de presentación y ya me la cogía bien.

    Saludos

    • Propuesto como respuesta golfgti6 martes, 23 de mayo de 2017 16:06
    miércoles, 17 de mayo de 2017 19:12