Pregunta

SQLite utiliza algo que los autores denominan " Manifiesto Typing ", lo que significa que básicamente SQLite es de tipos dinámicos:. puede almacenar un valor en una columna varchar "int" si quieres

Esta es una decisión de diseño interesante, pero cada vez que he utilizado SQLite, lo he usado como un RDBMS estándar y trató a los tipos como si fueran estática. De hecho, nunca he querido para columnas de tipos dinámicos en el diseño de bases de datos en otros sistemas.

Por lo tanto, es útil cuando esta función? Tiene a nadie encontró un buen uso para él en la práctica que no se podría haber hecho con la misma facilidad con columnas de tipos estáticos?

¿Fue útil?

Solución

En realidad, sólo hace que los tipos más fáciles de usar. No es necesario que preocuparse de lo grande que este campo tiene que estar a un nivel de base de datos más, o cuántos digets sus números enteros puede ser. Más o menos es un 'por qué no?' cosa.

Por otro lado, los tipos estáticos en SQL Server permite que el sistema para buscar e indexar mejor, en algunos casos mucho mejores, pero por la mitad de todas las aplicaciones, dudo que las mejoras de rendimiento de base de datos importaría, o su rendimiento es 'pobre 'por otras razones (tablas temporales que se crean cada selectos, selecciona exponenciales, etc.).

Yo uso SQLite todo el tiempo para mis proyectos .NET como una memoria caché del cliente, ya que es demasiado fácil también utilizar. Ahora bien, si sólo pueden conseguir que se utilice el mismo GUID como servidor SQL sería un campista feliz.

Otros consejos

Dynamic escribir es útil para almacenar cosas como opciones de configuración. Tome el registro de Windows, por ejemplo. Cada tecla se parece mucho a tener una mesa de SQLite de la forma:

Crear una configuración de la tabla (nombre TEXTO clave principal, valor);

donde valor puede ser nulo (REG_NONE) o un número entero (REG_DWORD / Reg_qword), TEXT (REG_SZ), o BLOB (REG_BINARY).

Además, voy a tener que estar de acuerdo con los de Jason sobre la utilidad de no hacer cumplir un tamaño máximo para las cadenas. Debido a que gran parte del tiempo, estos límites son puramente arbitraria, y se puede contar con encontrar algún día una cadena de 32 bytes que necesita ser almacenada en su VARCHAR (30).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top