none
archivos MDF de solo lectura RRS feed

  • Pregunta

  • Tengo un proyecto en visual studio 2015 con una base de datos MDF, en el entorno de desarrollo puedo consultar, agregar y modificar registros pero cuando genero el paquete de instalación de mi aplicación y la instalo en otra computadora solo puedo consultar la base de datos (MDF), NO me permite agregar registros, revise las propiedades de mi base de datos con el SQL 2014 Management studio y Readonly=False, mi cadena de conexión es:

    Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\oeDb.mdf;Integrated Security=True;Connect Timeout=30

    en la otra computadora de prueba esta instalado el SqlLocalDB 2014.

    agradezco la ayuda a mi problema.


    • Editado Pedro Grullo miércoles, 9 de agosto de 2017 18:42
    miércoles, 9 de agosto de 2017 18:33

Respuestas

Todas las respuestas

  • Hola Pedro, fijate que la cuenta de servicio SQL Server tenga permisos READ/WRITE sobre la Ruta y subcarpetas de [DataDirectory] y adicionalmente que la misma no se encuentre en solo lectura.

    Si el servicio levanta cuentas built-in como NT AUTHORITY\SYSTEM, pueden aparecer problemas de funcionamiento por la redirección de que realiza automáticamente a nivel de filesystem el sistema operativo.

    Te dejo un link con mas información a permisos y usuarios:

    https://msdn.microsoft.com/en-US/library/hh510202%28SQL.120%29.aspx?f=255&MSPPError=-2147217396

    Saludos


    Mariano K.

    • Propuesto como respuesta Moderador M martes, 15 de agosto de 2017 17:56
    miércoles, 9 de agosto de 2017 19:22
  • Agradezco grandemente la orientación, sin embargo sigo sin poder agregar/modificar/eliminar datos de mi db, los puedo leer nadamas. una pregunta adicional ¿SqlLocalDB  se debe configurar en la pc destino? nuevamente gracias.
    martes, 15 de agosto de 2017 19:08
  • Hola que tal Pedro. No hay mucho por configurar una vez instalado el componente de LocalDB.

    Puedes verificar mediante un query desde Management Studio :

    sp_helpdb "nombre de la base de datos" 

    Y ver particularmente el campo Status, que debería ser algo como lo siguiente:

    Status=ONLINE, Updateability=READ_WRITE, UserAccess=MULTI_USER, Recovery=SIMPLE, Version=706, Collation=Latin1_General_CI_AI, SQLSortOrder=0, IsAutoCreateStatistics, IsAutoUpdateStatistics

    Saludos.


    Mariano K.

    martes, 15 de agosto de 2017 21:25
  • Hola, este es el resultado del query:

    Status=ONLINE, Updateability=READ_WRITE, UserAccess=MULTI_USER, Recovery=FULL, Version=782, Collation=Modern_Spanish_CI_AS, SQLSortOrder=0, IsAutoCreateStatistics, IsAutoUpdateStatistics, IsFullTextEnabled

    mi db la tome de esta ruta:

    C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA

    y la agregué a mi proyecto de vstudio 2015 como una base de datos basada en servicio, todo mi proyecto funciona bien, cree un instalador y la aplicación la instalé en otro pc donde, como requisito, instalé el SqlLocalDB 2014. En este otro pc la aplicación trabaja bien, excepto que no permite agregar/modificar/eliminar datos, QUÉ ESTÁ MAL, no encuentro documentación que me indique que he realizado algo incorrecto, Gracias nuevamente.


    • Editado Pedro Grullo miércoles, 16 de agosto de 2017 17:14
    miércoles, 16 de agosto de 2017 17:13
  • Pedro, lo único que puedo pensar es que posiblemente al ser el Path en Program Files, el usuario que finalmente utilizar la aplicación no tenga permisos sobre esas carpetas.

    Intentaste ubicar el datafile en otra ubicación?

    Saludos.


    Mariano K.

    miércoles, 16 de agosto de 2017 18:21
  • Alguna referencia de donde pueda revisar? la instalación de mi app la hago como administrador, gracias nuevamente.
    miércoles, 16 de agosto de 2017 18:25
  • ha quedado resuelto, todo consistía en asignar derechos de escritura en la cuenta del usuario de windows, agradezco la ayuda.
    • Marcado como respuesta Moderador M viernes, 18 de agosto de 2017 17:02
    jueves, 17 de agosto de 2017 23:01