Получи случайную криптовалюту за регистрацию!

SQLite на практике

Логотип телеграм канала @sqliter — SQLite на практике S
Логотип телеграм канала @sqliter — SQLite на практике
Адрес канала: @sqliter
Категории: Технологии
Язык: Русский
Количество подписчиков: 2.13K
Описание канала:

Все о работе с данными в sqlite // antonz.ru

Рейтинги и Отзывы

1.50

2 отзыва

Оценить канал sqliter и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

0

3 звезд

0

2 звезд

1

1 звезд

1


Последние сообщения 2

2022-01-15 19:47:24 Новости песочницы

Обновил SQLite-песочницу! Самое главное — теперь можно сохранять сниппеты, не указывая API-ключ гитхаба. Жмакнули на «share» и готово. Так что песочницей смогут пользоваться люди, далекие от гитхаба

Еще обновил SQLite до свежайшей версии 3.37.2. И включил пачку стандартных расширений вроде R*Tree. А в планах еще приделать все расширения из sqlean, вот тогда заживем вообще.

https://sqlime.org/
538 views16:47
Открыть/Комментировать
2022-01-14 13:09:04 Люди и код

Неожиданно для себя стал гостем подкаста. Мы с Тимуром Тукаевым хотели сделать статью, но в аудио-формате она получилась живее и интереснее.

Послушайте, если вам интересно про sqlite, мои проекты или открытый код в целом.

Конкретно sqlite обсуждаем с 12:15.

https://we.fo/1604736632

P.S. Поскольку к записи мы специально не готовились, звучу я как из ведра. Но если потерпеть минуту, вы привыкнете
657 viewsedited  10:09
Открыть/Комментировать
2022-01-12 18:15:48 Гибкие типы данных в SQLite

Люди часто не понимают, что за ерунда происходит в SQLite с типами данных. Давайте разберемся.

SQLite использует пять типов данных:

— INTEGER — целые числа,
— REAL — действительные числа,
— TEXT — строки,
— BLOB — бинарные данные,
— NULL — пустое значение.

Пока ничего необычного (только типов маловато по сравнению с другими СУБД).

А как вам такое:

SQLite может хранить данные любого типа — вне зависимости от того, какой тип указан на столбце.

Хотите записать число 3.14 в integer-поле? Пожалуйста (и никакого округления). Или, может быть, 'привет' в поле типа real? Без проблем.

Дело в том, что SQLite хранит тип не только на столбце, но и на каждом значении в таблице. Именно поэтому в одном столбце без проблем хранятся значения разных типов. Тип на столбце используется как рекомендация: при вставке SQLite пытается привести значение к рекомендуемому типу, но если не получилось — сохраняет «как есть».

Это удобно для анализа данных — можно сначала все загрузить, а потом средствами SQL разбираться с проблемными значениями. Любая другая СУБД выдаст ошибку при импорте и заставит вас «шерстить» файл скриптами или вручную.

С другой стороны, это неожиданное поведение, за которое многие недолюбливают SQLite и даже прозвали его «JavaScript в мире баз данных». Со временем разработчики SQLite прислушались и сделали альтернативный механизм «строгих» таблиц — но о нем в другой раз.
593 views15:15
Открыть/Комментировать
2022-01-09 13:42:13 Стрелочка для JSON

В SQLite может появиться специальный синтаксис для JSON, как в постгресе!

Было:

select json_extract(person,'$.name') ...

Стало:

select person->'name' ...

Не 100%, но весьма вероятно.

https://sqlite.org/src/doc/json-enhancements/doc/json-enhancements.md
933 views10:42
Открыть/Комментировать
2022-01-04 15:51:17 Все расширения для SQLite

Мне очень нравится SQLite. Это миниатюрная встраиваемая база, которая отлично подходит как для исследовательского анализа данных, так и в качестве хранилища для небольших приложений.

Но есть у нее один недостаток: маловато встроенных функций по сравнению с PostgreSQL или Oracle.

К счастью, авторы заложили в SQLite механизм расширений, на котором можно сделать почти все что угодно. В результате интернет заполнен обрывочными расширениями, которые добавляют функцию-другую.

Мне хотелось большой системности.

Так появился проект sqlean — в нем я собираю вместе недостающие в SQLite функции, распределяю их по модулям, рефакторю код, пишу тесты и документацию. Получается что-то вроде стандартной библиотеки, как в Python или Go, только для SQLite.

Там есть регулярные выражения, работа с файлами, мат. статистика, поддержка CSV. Даже массивы есть! (почти как в постгресе).

Планирую по каждому модулю написать отдельную статью, а пока вот краткий обзор:

https://antonz.ru/sqlean/
495 views12:51
Открыть/Комментировать
2021-12-21 10:49:30 Unix timestamp

SQLite 3.38 получит функцию даты/времени в формате unix timestamp! А пока он не вышел, можно попробовать в моем расширении isodate:

select unixepoch('2021-12-22 12:34:45');
1640176485

https://github.com/nalgeon/sqlean/issues/27#issuecomment-998138191
508 views07:49
Открыть/Комментировать
2021-12-17 13:46:45 Читаем и пишем файлы прямо из SQLite

У CLI-утилиты sqlite есть встроенные функции writefile и readfile. Я их немного доработал и оформил в виде расширения fileio.

Пишем в файл:

select writefile('hello.txt', 'hello world');

Читаем:

select readfile('hello.txt');

Выводим содержимое каталога:

select * from lsdir('.');

Для любителей делать все на свете, не покидая SQL ツ
511 views10:46
Открыть/Комментировать
2021-12-15 18:10:24 SQLite GUI

По запросу «sqlite gui» в гугле на первой позиции стоит программа «DB Browser for SQLite». На мой взгляд, она плоха примерно всем, и такая популярность ничем не оправдана.

Если вы работаете под Windows, обратите внимание на sqlite-gui. Она легкая, быстрая, удобная, и с кучей приятных дополнительных фич вроде настраиваемых шорткатов, генератора данных и даже встроенного REST API сервера.

А еще автор (к сожалению, не знаю даже его имени) пишет классные статьи про SQLite на хабре.
630 views15:10
Открыть/Комментировать
2021-12-02 16:43:59 Быстрый поиск похожих слов на SQL

Написал статью о том, как искать похожие слова и исправлять опечатки на большом словаре (1.5 млн записей).

рассчет → расчет
сонце → солнце
абривиатура → аббревиатура

Попутно вы узнаете, как считать расстояние между словами, что такое фонетические коды, и как использовать фонетику и расстояния для моментального поиска (<50 мс).

https://antonz.ru/similar-words/
532 views13:43
Открыть/Комментировать
2021-11-30 18:28:51 Если вы написали отличную статью, о которой никто не знает

В русскоязычном айти есть несколько «селебрити», которых все читают и обсуждают. И намного больше малоизвестных ребят, которые пишут классные статьи. У селебрити и так все отлично, а вот остальным я бы хотел помочь найти свою аудиторию.

Поэтому провожу эксперимент! Готов опубликовать ссылку на вашу статью, если она мне понравится. Бесплатно. Знаменитостью это вас не сделает, но статью точно увидит больше людей.

Все условия
503 views15:28
Открыть/Комментировать