Nombre
importar - Persiste una TABLA BLOX dentro de SQLite.
Sinopsis
ok = sqlite.importar(db, nombre_tabla, tabla)
Descripcion
Toma una TABLA BLOX y la vuelca a SQLite recreando la tabla destino.
Es util para:
- guardar datos tabulares entre ejecuciones
- convertir resultados BLOX en datos persistentes
- preparar informacion para consultas SQL posteriores
sqlite.importar() y sqlite.exportar() son operaciones complementarias,
pero no inversas exactas.
En esta version, importar() esta pensado para TABLAS planas y
homogeneas.
Si la TABLA contiene subtablas, campos anidados o estructuras no planas,
la importacion no se realiza automaticamente.
Eso no significa que esa informacion no pueda terminar en SQLite. Significa que, para llevarla a una base relacional, antes debe transformarse o normalizarse en tablas compatibles.
Comportamiento
- Recrea la tabla destino antes de insertar los datos.
- En esta version soporta campos escalares
NUMERICO,LOGICO,STRINGyVACIO. - Los campos faltantes o nulos se almacenan como
NULLen SQLite.
Funciones API relacionadas
sqlite.exportar()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| db | SQLITE | Handle de conexion SQLite abierto. |
| nombre_tabla | STRING | Nombre de la tabla SQLite destino. |
| tabla | TABLA | TABLA BLOX fuente a persistir en SQLite. |
Valor de retorno
LOGICO - VERDADERO si la importacion se completo correctamente.
Ejemplo
INCLUIR "sqlite.api"
INCLUIR "tablas.api"
FUNCION PRINCIPAL
INICIO
SQLITE db
TABLA t, out
NUMERICO i
STRING fuente, comm, modo, ext, formato
// 1. Carga datos del archivo en la tabla 't'
//
fuente = "comandos.dat"
modo = "archivo"
formato = "dat"
CARGAR(fuente, t, modo, formato)
tablas.imprimir(t)
// 2. Abre la base de datos
//
db = sqlite.abrir("documentacion.db")
// 3. Carga la tabla 't' en la base de datos 'comandos'
//
sqlite.importar(db, "comandos", t)
// 4. Consulta la base de datos 'comandos' y carga en la tabla 'out'
//
out = sqlite.exportar(db, "SELECT nombre, descripcion, sintaxis FROM comandos ORDER BY nombre;")
tablas.imprimir(out)
sqlite.cerrar(db)
FINAL