Listar la tablas y vistas que tiene una base de datos sqlite
Ampliando un programa, me he encontrado el siguiente problema: necesitaba añadir algunas nuevas tabla a una a la base de datos sqlite que tenía creada (y ya con datos).
Pues se me ha ocurrido hacerlo así:
1) Ver que las tablas existentes
2) Si falta la tabla nueva, la creo con una sentencia sql
El paso 1º es necesario para comprobar si ya hemos hecho una vez el proceso, y no volver a repetir el paso 2º (crear la tabla nueva)
Pero ¿como veo las tablas que tiene la base de dato?
Con la sentencia:
SELECT * FROM sqlite_master where type="table"
Obtenemos la información de las tablas existentes.
El campo "name" indica el nombre, con lo cual ya puedo comprobar si existe la table, y en caso de no existir, crearla con la sentencia sql.
Para listar las vistas (view) la sentencia sería:
SELECT * FROM sqlite_master where type="view"
Fuentes:
http://www.ajpdsoft.com/modules.php?name=Foros&file=viewtopic&t=1641
http://stackoverflow.com/questions/1601151/how-do-i-check-in-sqlite-whether-a-table-exists
No hay comentarios:
Publicar un comentario