Problema original: ¿Cuál es el formato de columna correcto para una marca de tiempo de Unix?SQlite: formato de columna para timestamp unix; Tipos enteros
La red está llena de confusión: algunas publicaciones afirman que SQLite no tiene tipos sin firmar, ya sea cualquiera, o con excepción del tipo int de 64 bits (pero hay ejemplos (contra) que invocan UNSIGNED INTEGER). La página de tipos de datos lo menciona solo en un gran ejemplo. También afirma que hay un entero de 6 bytes pero no le da un nombre. Parece que mis intentos con INTEGER son marcas de tiempo de Unix de tienda firmadas de 4 bytes firmadas como números negativos. He oído que algunos sistemas también devuelven las marcas de tiempo de 64 bits. OTOH No me gusta desperdiciar 4 bytes para almacenar 1 bit adicional (parte superior de la marca de tiempo), e incluso si tengo que elegir un formato de datos más grande, preferiría ir al de 6 bytes. Incluso he visto una publicación que afirma que la marca de tiempo SQLite Unix es del tipo REAL ...
Problema completo: ¿Podría alguien aclarar ese lío?
Gracias. Realmente no ayuda el hecho de que la distinción entre los cuatro: nombres int "azúcar sintáctico", C enteros (más representación interna) y el almacenamiento en disco de los números no se enfatizan claramente en varios documentos, y varios valores y nombres se dan sin mucho contexto. Su respuesta explica la diferencia y los detalles de cada uno, y me permitió comprender realmente la estructura del sistema. –