SQLite3 использует динамическую типизацию, а не статическую типизацию, в отличие от других особенностей SQL. сайт SQLite читает:
Большинство механизмов СУБД SQL (каждый SQL-сервер, отличный от SQLite, насколько нам известно) использует статическую жесткую типизацию. При статической типизации тип данных значения определяется его контейнером - конкретным столбцом, в котором хранится значение.
SQLite использует более общую систему динамического типа. В SQLite тип данных значения связан с самим значением, а не с его контейнером.
Мне кажется, что это именно то, чего вы не хотите, поскольку оно позволяет хранить, например, строки в целых столбцах.
Страница продолжается:
... динамическая типизация в SQLite позволяет делать то, что невозможно в традиционных жестко типизированных базах данных.
У меня есть два вопроса:
- Вопрос о применении: какие примеры, когда динамическая типизация SQLite3 полезна?
- Вопрос истории/дизайна: Какова была мотивация для внедрения SQLite с динамической типизацией?