Información general de datos locales

El término datos locales hacen referencia a una conexión entre la aplicación y un archivo de base de datos en el equipo local (en contraposición a tener una conexión con una base de datos en un servidor remoto). Los archivos de base de datos de SQL Server Compact 3.5 (.sdf), SQL Server y los archivos de base de datos de SQL Server Express (.mdf) y los archivos de base de datos de Microsoft Access (mdb) son los archivos de bases de datos que se admiten.

Nota

La base de datos local preferida para las aplicaciones cliente es SQL Server Compact 3.5. Para obtener más información, vea SQL Server Compact 3.5 y Visual Studio.

Nota

Arrastre un archivo .sdf, .mdf o .mdb desde el Explorador de Windows hasta el Explorador de soluciones para configurar automáticamente la conexión e iniciar el Asistente para la configuración de orígenes de datos. A continuación, podrá seleccionar los objetos para usar en la aplicación.

La tabla siguiente proporciona vínculos a temas que describen cómo conectar la aplicación a los datos locales:

Tema

Descripción

Tutorial: Crear una base de datos de SQL Server Compact 3.5

Proporciona instrucciones paso a paso para crear un archivo de base de datos local que se puede usar para probar las características de datos y crear aplicaciones.

Tutorial: Crear una base de datos de SQL Server Express

Proporciona instrucciones paso a paso para crear un archivo de base de datos local que se puede utilizar para probar las características de datos y la generación de la aplicación.

Tutorial: Conectarse a datos en una base de datos de SQL Server Express (Windows Forms)

Proporciona instrucciones paso a paso para conectar a una base de datos de SQL Server Express creando una aplicación para Windows simple.

Tutorial: Conectar a los datos en una base de datos de Access (Windows Forms)

Proporciona un ejemplo paso a paso de conexión con una base de datos de Microsoft Access.

Cómo: Crear una conexión de datos a la base de datos Northwind

Proporciona los detalles para conectar a SQL Server, SQL Server Compact 3.5, SQL Server Express y Access las versiones de la base de datos de ejemplo Northwind.

Después de crear un origen de datos configurado para tener acceso a un archivo de datos locales, trabaja con los datos utilizando las mismas tecnologías y objetos que utilizaría para trabajar con datos de cualquier otro origen. Para obtener más información, vea Crear aplicaciones de datos.

La base de datos forma parte de su aplicación

Si utiliza el enfoque de datos locales, no sólo puede conectarse a un archivo de base de datos, sino que también puede integrar este archivo en la aplicación. Por ejemplo, puede hacer clic en Agregar elemento existente en el menú Proyecto, desplazarse a un archivo sdf, .mdf o .mdb existente y agregarlo al proyecto.

Nota   Si utiliza el Asistente para la configuración de orígenes de datos para crear el origen de datos de un archivo de datos locales, se le pregunta si desea incluir el archivo en el proyecto. Si no lo desea, su aplicación sólo contendrá la cadena de conexión que indica la ruta de acceso en el código y no el archivo de datos real. Para obtener más información, vea Cómo: Administrar archivos de datos locales en los proyectos.

Al agregar archivos de datos locales, se crean un conjunto de datos con tipo y una cadena de conexión dinámica que señala al archivo de base de datos de la aplicación. Cuando agrega un archivo de base de datos al proyecto, utiliza el Asistente para la configuración de orígenes de datos para seleccionar los objetos que se van a incluir en el conjunto de datos.

Después de completar el asistente, el archivo de base de datos y el conjunto de datos aparecen en el Explorador de soluciones/Explorador de bases de datos y los objetos de base de datos seleccionados están disponibles en la ventana Orígenes de datos. Puede arrastrar elementos desde la ventana Orígenes de datos al formulario para crear controles enlazados a los datos subyacentes. (Elija Mostrar orígenes de datos en el menú Datos para abrir la ventana Orígenes de datos.) Para obtener más información, vea Enlazar controles a los datos en Visual Studio.

Existen dos copias de la base de datos en cada proyecto

Al generar un proyecto, el archivo de base de datos podría copiarse de la carpeta de proyecto de raíz en la carpeta de salida (carpeta bin). (Haga clic en el botón Mostrar todos los archivos en el Explorador de soluciones para ver la carpeta bin.) Este comportamiento depende de la propiedad Copiar en el directorio de resultados del archivo. La configuración predeterminada de la propiedad Copiar en el directorio de resultados depende del tipo de archivo de base de datos que se está usando.

Nota

El comportamiento de la propiedad Copiar en el directorio de resultados no se aplica a proyectos web o C++.

El archivo de base de datos de la carpeta raíz del proyecto se modifica únicamente cuando se edita el esquema o los datos de la base de datos mediante el Explorador de servidores/Explorador de bases de datos u otra herramienta de Visual Database Tools.

El comportamiento del archivo de base de datos depende de la configuración de la propiedad Copiar en el directorio de resultados, que se detalla en la tabla siguiente.

Durante el desarrollo de la aplicación, los cambios realizados en los datos (en tiempo de ejecución dentro de la aplicación) se harán en la base de datos de la carpeta bin. Por ejemplo, si presiona F5 para depurar la aplicación, se conectará a la base de datos de la carpeta bin.

Configuración de Copiar en el directorio de resultados

Comportamiento

Copiar si es posterior (valor predeterminado para los archivos .sdf)

El archivo de base de datos se copia del directorio de proyecto en el directorio bin la primera vez que se genera el proyecto. Cada vez subsiguiente que se genera el proyecto, se compara la propiedad Fecha de modificación de los archivos. Si el archivo en la carpeta de proyecto es posterior, se copia en la carpeta bin, reemplazando el archivo que se encuentra en ella. Si el archivo de la carpeta bin es posterior, no se copia ningún archivo.

Nota de precauciónPrecaución
Esta opción no se recomienda para los archivos .mdb o .mdf.El archivo de base de datos puede cambiar aunque no se haya efectuado ningún cambio en los datos.Simplemente abrir una conexión (por ejemplo, expandiendo el nodo Tablas en el Explorador de servidores) en un archivo de datos puede marcarlo como posterior.Debido a este comportamiento imprevisible, no recomendamos esta opción para los archivos .mdb o .mdf.

Copiar siempre (valor predeterminado para los archivos .mdf y .mdb)

El archivo de base de datos se copia del directorio de proyecto en el directorio bin cada vez que se genera la aplicación. Siempre que se genera la aplicación y se guardan los cambios de los datos, los cambios se sobrescriben cuando se copia el archivo original en el directorio bin, sustituyendo la copia recién modificada. No verá los datos actualizados la próxima vez que ejecute la aplicación. Cualquier cambio realizado en el archivo de datos de la carpeta de resultados se sobrescribirá la próxima vez que ejecute la aplicación.

No copiar

El sistema de proyectos nunca copia ni sobrescribe el archivo. Puesto que la aplicación crea una cadena de conexión dinámica que señala al archivo de base de datos del directorio de salida, esta configuración sólo actúa en archivos de base de datos local cuando copia manualmente el archivo. Debe copiar manualmente el archivo en el directorio de salida después de establecer en No copiar.

Problemas comunes de los datos locales

La tabla siguiente proporciona explicaciones a problemas comunes encontrados cuando se trabaja con archivos de datos locales.

Problema

Explicación

Cada vez que pruebo mi aplicación y modifico datos, mis cambios no aparecen la próxima vez que ejecuto mi aplicación.

La opción Copiar en el directorio de resultados se ha establecido en Copiar si es posterior o Copiar siempre. Esta configuración sobrescribirá la base de datos en su carpeta de salida (si se modifica la base de datos al probar la aplicación) cada vez que genera el proyecto. Para obtener más información, vea Cómo: Administrar archivos de datos locales en los proyectos.

Recibo un mensaje que indica que el archivo de datos está bloqueado

Access (archivos .mdb): Compruebe que el archivo no está abierto en otro programa, como Access.

SQL Server Express (archivos .mdf): SQL Express bloquea el archivo de datos si intenta copiarlo, moverlo o cambiar su nombre fuera del IDE de Visual Studio.

Acceso denegado cuando dos usuarios intentan tener acceso a la base de datos al mismo tiempo

Visual Studio utiliza las instancias de usuario, una característica de SQL Server Express que crea una instancia independiente de SQL Server para cada usuario. Cuando un usuario tiene acceso al archivo, cualquier usuario posterior no se podrá conectar. Esto puede suceder, por ejemplo, si intenta ejecutar una aplicación Web en el servidor de desarrollo de ASP.NET y en IIS a la vez, ya que generalmente IIS se ejecuta con una cuenta diferente.

Vea también

Tareas

Tutorial: Conectarse a datos en una base de datos de SQL Server Express (Windows Forms)

Tutorial: Conectar a los datos en una base de datos de Access (Windows Forms)

Cómo: Agregar una base de datos de SQL Server Compact 3.5 a un proyecto

Cómo: Implementar una base de datos de SQL Server Compact 3.5 con una aplicación

Tutorial: Crear una base de datos de SQL Server Compact 3.5

Tutorial: Agregar una base de datos de SQL Server Compact 3.5 a una aplicación e implementarla