Задать вопрос
RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону

Почему в SQLiteStudio так мало типов данных?

646f1717cc816484484445.pngИх же намного больше
  • Вопрос задан
  • 542 просмотра
Подписаться 1 Простой 4 комментария
Решения вопроса 2

Их же намного больше

Кто сказал?
В документации вот что пишут:

Most SQL database engines (every SQL database engine other than SQLite, as far as we know) uses static, rigid typing. With static typing, the datatype of a value is determined by its container - the particular column in which the value is stored.

SQLite uses a more general dynamic type system. In SQLite, the datatype of a value is associated with the value itself, not with its container. The dynamic type system of SQLite is backwards compatible with the more common static type systems of other database engines in the sense that SQL statements that work on statically typed databases work the same way in SQLite. However, the dynamic typing in SQLite allows it to do things which are not possible in traditional rigidly typed databases. Flexible typing is a feature of SQLite, not a bug.

На уровне синтаксиса, конечно, ты можешь использовать всякие varchar-ы, но в этом нет смысла, тк они всё равно будут представлены как один из этих пяти классов.

Varchar = text
Boolean = integer
Datetime =сам реализуй через text, integer или real
Float = real.

Если тебе очень нужно - сам пиши create table с теми типами, которые тебе нужны.
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
На сайте sqlite https://www.sqlite.org/datatype3.html перечислено действительно 5 storage classes. Насколько я понимаю создатели решили что эти storage classes являются как-бы супер-типами для всех прочих типов данных.
Прочие типы данных как-бы конкретизируют эти storage classes.

Почему студия показывает только эти - чорт его знает. Но разве это вас ограничивает в написании своего ddl ?

Вам еще повезло что вы не работаете с HBase например. Там вообще все типы данных - это byte_array и вот что хочешь то и делай. По сути разработчику самому предлагают вводить понятие типа данны и механики сериализации-десериализации.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
Потому что, это Lite. У локальных СУБД должно быть минимум функционала и максимум переносимость в любую среду разработки.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы