Me gustaría leer la tabla y la información de la columna en la aplicación C# .NET para Windows. Sé que hay acceso base SMO para SQL Server. En un terreno similar, ¿hay alguna API para SQLite?Lectura de información de la tabla SQLite en C# .NET
Respuesta
Puede utilizar el método GetSchema
:
DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SQLite");
using (DbConnection connection = factory.CreateConnection())
{
connection.ConnectionString = @"Data Source=D:\tmp\test.db";
connection.Open();
DataTable tables = connection.GetSchema("Tables");
DataTable columns = connection.GetSchema("Columns");
tables.Dump();
columns.Dump();
}
GetSchema
devuelve un DataTable que contiene información sobre las tablas, columnas, o lo que usted especifique. GetSchema
válidos los argumentos para SQLite incluyen:
- MetaDataCollections
- DataSourceInformation
- DataTypes
- ReservedWords
- Catálogos
- Columnas
- índices
- IndexColumns
- Tablas
- Vistas
- ViewColumns
- ForeignKeys
- disparadores
Según [esta publicación de stackoverflow] [1], getSchema no funciona para SQLite. Tuve el mismo problema y ahora estoy usando "SQLiteCommand (" PRAGMA table_info ('tracks') ", DB)" [1]: http://stackoverflow.com/questions/3268986/getting-table-schema- doesnt-seem-work-with-system-data-sqlite –
@ RU-Bn, lo intenté de nuevo, funciona bien (al menos con el proveedor oficial System.Data.SQLite) –
Thx @Thomas pero supongo que es específico para alguna configuración (dura o blanda) que algunos de nosotros tenemos. (Utilizando la versión del proveedor 1.0.65) Y también lo mencioné como una copia de seguridad/salto rápido para futuros usuarios con el mismo problema. (Sin descrédito significó ;-)) –
- 1. La lectura de la tabla de rutas en FreeBSD
- 2. SQLite/PHP de solo lectura?
- 3. SQLite Únete en Windows 8 Metro C# con sqlite-net
- 4. IPTC .NET biblioteca de lectura/escritura C#
- 5. SQLite adecuado para la lectura concurrente?
- 6. Encuentra nombres de columna en la tabla SQLite vacío
- 7. SQLite: base de datos de solo lectura
- 8. Recuperar rango de la tabla sqlite
- 9. Lectura del script de shell Resultado en C# .Net Program
- 10. ¿Lectura de un archivo CSV en .NET?
- 11. SQLite lectura y escritura simultáneas
- 12. Lectura de documentos PDF en .Net
- 13. Insertar nulo en la tabla Sqlite
- 14. Python y SQLite: insertar en la tabla
- 15. ¿Hay un contenedor .NET/C# para SQLite?
- 16. ¿Cómo elimino la columna de la tabla sqlite en android?
- 17. Información de sólo lectura a través de la primavera + Hibernate
- 18. inserción en la tabla SQLite con la columna única
- 19. Información segura contenida en iPhone SQLite DB
- 20. ¿Cómo obtener información de la impresora en .NET?
- 21. Fusionando dos archivos de base de datos SQLite (C# .NET)
- 22. Nombre de la tabla de variables en sqlite
- 23. Restricción de la tabla de SQLite: única en varias columnas
- 24. Tabla de solo lectura en mysql
- 25. SQLite - ordenando una tabla
- 26. ¿Cómo puedo obtener la información de la CPU en .net?
- 27. Lectura de datos de DataGridView en C#
- 28. tabla se 'sólo lectura'
- 29. problema con la base de datos sqlite, sin tabla:
- 30. SQLite: Búsqueda de subcadenas eficiente en la tabla grande
busca para esto? http://stackoverflow.com/questions/93654/is-there-a-net-c-wrapper-for-sqlite –
@Martin Buberl, esa no es la misma pregunta ... el OP no está buscando un proveedor ADO.NET , pregunta cómo acceder a los metadatos de la base de datos –