2009-12-23 42 views
117

Tengo un archivo SDF y me gustaría recuperar su esquema y consultarlo con alguna IU. ¿Cómo puedo hacer esto? No tengo Visual Studio instalado en la máquina y me gustaría instalar el menor software posible.¿Cómo se abre un archivo SDF (SQL Server Compact Edition)?

+1

Google "visor de archivos sdf" y verá muchas opciones, algunas de ellas gratuitas. – DOK

+6

Use el programa de código abierto "CompactView": http://www.sourceforge.net/p/compactview/home/Home/ – Ivan

+1

Vea esta [lista completa] (http://erikej.blogspot.com/2009/04/sql -compact-3rd-party-tools.html) –

Respuesta

59

Pruebe el SQL Server Management Studio (versión 2008 o anterior) de Microsoft. Descárguelo desde here. No estoy seguro acerca de la licencia, pero parece ser gratis si descarga la EDICIÓN EXPRESS.

Si tiene la opción, puede copiar el archivo sdf a una máquina diferente que puede contaminar con software adicional.

Actualización: comentario de Nick Westgate en formato agradable

The steps are not all that intuitive:

  1. Open SQL Server Management Studio, or if it's running select File -> Connect Object Explorer...
  2. In the Connect to Server dialog change Server type to SQL Server Compact Edition
  3. From the Database file dropdown select < Browse for more...>
  4. Open your SDF file.
+4

No lo hizo t trabajo para mí, la versión compacta de código abierto mencionada por Ivan funcionó. Intenté SQL Management Studio 2008 Express y mi archivo sdf fue Sql Ce versión 4.0 –

+0

¿No es un archivo SDF de SQL Server Compact? ¿Y así SQL Server Management Studio no podrá abrirlos? Me sorprende que esto haya funcionado para Peter. – dumbledad

+13

Mi respuesta editada fue rechazada, así que disculpe el pobre formato. ¡Los pasos no son tan intuitivos, y deberían estar en la respuesta! (1) Abra SQL Server Management Studio o, si se está ejecutando, seleccione Archivo -> Conectar explorador de objetos ... (2) En el cuadro de diálogo Conectarse al servidor, cambie Tipo de servidor a SQL Server Compact Edition (3) En el menú desplegable Archivo de base de datos, seleccione < Busque más ...> (4) Abra su archivo SDF. –

46

Puede abrir SQL compacto 4.0 Bases de datos desde Visual Studio 2012 directamente, yendo a

  1. Ver ->
  2. Explorador de servidores ->
  3. Conexiones de datos ->
  4. Agregar conexión ...
  5. Cambiar ... (Fuente de datos :)
  6. Microsoft SQL Server Compact 4.0
  7. Examinar ...

y siguiendo las instrucciones allí.

Si está de acuerdo con que se actualicen a 4.0, también puede abrir versiones anteriores de bases de datos SQL Compact, lo cual es útil si solo desea ver algunas tablas, etc. para cosas como el desarrollo de bases de datos locales de Windows Phone.

(tenga en cuenta que no estoy seguro de si esto requiere una SKU específica de VS2012, si ayuda estoy corriendo Premium)

+4

Gracias Blakomen, la mejor respuesta si tiene VSS 2012 IMO. Desafortunadamente, no fue el caso de OP, pero me ayudó. –

+4

En VS 2013 no veo el botón "Cambiar ..." y no hay ninguna opción para SQL Server Compact 4.0, aunque lo tenga instalado. Lo único que funcionó para mí fue con LINQPad. – RandomEngy

+37

En 2013, se eliminó el soporte para SQL CE :( –

132

Descargar e instalar LINQPad, funciona para SQL Server, MySQL, SQLite y también SDF (SQL CE 4.0).

Pasos para SDF archivos abiertos:

  1. Haga clic en Agregar conexión

  2. Seleccionar contexto de datos Construir automáticamente y defecto (LINQ to SQL), entonces Siguiente.

  3. Bajo Proveedor elegir SQL CE 4.0.

  4. Bajo base de datos con Adjuntar archivos de base de datos seleccionado, elija Navegar para seleccionar el archivo .sdf.

  5. Haga clic en Aceptar.

+7

Intenté el modo SSMS y VS y ambos no funcionaron. Este sí. –

+0

Funciona muy bien: aquí hay una captura de pantalla en acción (ver CodeCamper.sdf): https: //twitter.com/johnleniel/status/470334781658783744 –

+1

Intenté esto y obtuve un error: necesitaba llamar a SqlCeEngine.Upgrade() para usarlo. Ingresar ese comando en LinqPad no funcionaba, así que hice una rápida aplicación de la consola para actualizar el archivo. Agregue referencias -> Ensambles -> Extensiones -> System.Data.SqlServerCe, luego nueva SqlCeEngine (@ "Data Source = D: \ mydb.sdf"). Upgrade(); Después de ejecutar tha t, LinqPad funcionó muy bien. – RandomEngy

Cuestiones relacionadas