Как стать автором
Обновить
2.12
Рейтинг

SQLite *

Компактная встраиваемая реляционная база данных

Сначала показывать
Порог рейтинга

Сила @RawQuery. Сокращаем код DAO на 90%

Разработка под Android *SQLite *Kotlin *
Из песочницы

Вы когда-нибудь задумывались над тем что ваши Dao это сплошной повторяющийся код и выглядит это все как ночной кошмар? Тогда я знаю решение вашей проблемы.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 1.4K
Комментарии 6

Новости

Я написал серверную SQLite

Блог компании SkillFactory Высокая производительность *PostgreSQL *Программирование *SQLite *
Перевод

Меня зовут Бен Джонсон, и я написал встраиваемую базу данных, которая служит бэкендом систем вроде etcd, — это BoltDB. Сегодня я работаю над Open Source проектом Litestream в компании Fly.io. Благодаря репликации Litestream делает SQLite приемлемым для фулстек‐приложений. Если вы можете установить SQLite, то Litestream заставите работать за 10 минут.

Читать далее
Всего голосов 28: ↑21 и ↓7 +14
Просмотры 9.3K
Комментарии 21

Переход с 1С: УПП на 1C:ERP: Переделываем интеграции с SQL-запросами к СУБД (на примере УПП — QlikView — ERP)

SQL *SQLite *Промышленное программирование *Управление проектами * *
Из песочницы
Tutorial

Для тех, кто не читал предыдущую статью, расскажу о сути проекта. В 2020-2021 году я участвовал в роли руководителя команды разработчиков Внедренческого центра "Раздолье" в проекте Управление продажами в международной компании на базе "1С:ERP" (ссылка на сайт 1c.ru). Проект был выбран победителем международного конкурса «1С:Проекта года» в номинации «Лучший проект с использованием технологии "Дистанционное внедрение"».

Суть проекта заключалась в переводе Заказчика с 1С:УПП на 1С:ERP. На его примере кратко опишу, какой была организационная структура и какие программы мы использовали при взаимодействии в команде и с пользователями.

Практически весь проект выполнялся удалённо. Многие сотрудники Заказчика, участвующие в проекте, в условиях карантинов и локдаунов были переведены на удалённую работу. Многие сотрудники нашей компании тоже работали удалённо, с командировками в этот период были большие проблемы. Сам Заказчик работает в режиме 24х7 и является одним из крупнейших предприятий в России по производству кофе. На начало проекта в качестве основы корпоративной системы у Заказчика была программа 1С:УПП редакции 1.2 (даже не 1.3). По завершению проекта в 2021-м перешли на ERP 2.5. К слову, когда начинали работу, в 2020-м году, когда 2.5. была ещё в бета-версии, но мы решили прислушаться к рекомендациям "Фирмы 1С" запускать новые проекты на ней, а не на 1С:ERP 2.4.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 4.9K
Комментарии 16

Справочники в iOS: храним, обновляем, используем

Блог компании HeadHunter Разработка под iOS *Разработка мобильных приложений *SQLite *

Всем привет! Меня зовут Саша, и я iOS-разработчик в hh.ru

Страны, города, профобласти, языки, валюты – всё это названия справочников внутри нашего мобильного приложения. Они очень редко меняются, но используются повсюду, а поэтому обязаны быть актуальными и не должны тратить время пользователя и разработчика на свое обновление. В этой статье разберемся, как сделать работу со справочниками простой и удобной.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 1.7K
Комментарии 0

Используем SQLite в KPHP и PHP через FFI

Разработка веб-сайтов *Open source *PHP *Программирование *SQLite *


Сегодня я расскажу о новой библиотеке, которая позволяет использовать SQLite сразу из PHP и KPHP.


Создавать FFI пакеты — не просто. Под катом будут ответы на следующие вопросы:


  • Как упростить установку и сделать библиотеку кроссплатформенной?
  • Как не допустить утечек ресурсов?
  • Как сделать библиотеку совместимой с KPHP и PHP?
  • Какова производительность FFI решений?

Мы не только попробуем новую библиотеку в действии, но и выработаем ряд практик, которые при широком распространении могут улучшить ситуацию с FFI пакетами в сообществе.

Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры 2.6K
Комментарии 1

Как подключиться к базе данных с помощью CSS

Блог компании SkillFactory Ненормальное программирование *CSS *SQL *SQLite *
Перевод

К старту курса по Fullstack-разработке на Python делимся материалом о том, как при помощи современных возможностей CSS и JS — ворклетов и API Houdini — подключиться к базе данных и выполнять запросы к ней. За подробностями приглашаем под кат.

Читать далее
Всего голосов 20: ↑13 и ↓7 +6
Просмотры 26K
Комментарии 8

Парсинг исторических данных с Google Scholar используя Python

Python *Data Mining *API *SQLite *
Из песочницы

Как спарсить исторические данные 2017-2021 годов с Google Scholar и сохранить их в CSV, SQLite используя Python и SerpApi.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 3.8K
Комментарии 8

Поисковик новостей (RSS), написанный на Java + SQLite

Java *SQL *SQLite *

Вы скорее всего подумаете: "Зачем десктопная программа, если можно, как минимум, загуглить?". А затем, что моя программа автоматически "гуглит" за тебя! Причём не только по одному ключевому слову, а по нескольким, которые вы, само собой, можете редактировать. А результат поиска будет направлен на указанную почту, исключая ранее направленные результаты.

Делал её для себя в рамках моего самообучения языку Java и чтобы не пропускать все новости, касающиеся ипотеки, выплат и т.д. (моя жена - инвестор - мониторит интересующие её фирмы, дивиденды и т.д. в этом духе). Теперь хочу поделиться ею с общественностью, т.к. польза на лицо, а я не меркантильный. Да и Ленин завещал делиться!

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 3.6K
Комментарии 24

Последний велосипедно-питоний бой с ошибками импорта  sqlite за 2 174 433 строчки. Часть 3

Python *SQL *XML *SQLite *Data Engineering *
Tutorial

Замечание. Вся трилогия (часть 1 тутчасть 2 туто велосипедостроении с sqlite, xml, csv только для совсем маленьких Питоньих кодеров. Не для крутых кодеров, они умрут от скуки в нашем опусе и ничего нового не увидят. В третьей части заканчиваем все, что начали ранее.

Начинаем изыски причины и местонахождения ошибки.

Итак: правильный ответ: ошибки в коде нет. Ну точнее ошибка возникает при работе кода из-за ошибки данных в файлах. 

Чтобы убедиться, что это так, добавим в код обработку исключений.

Совсем немного поправим наш код, добавим обработку и вывод на печать исключений:

Читать далее
Всего голосов 8: ↑4 и ↓4 0
Просмотры 1.5K
Комментарии 7

Продолжаем велосипедостроение с Python, xml, csv, sqlite. Часть 2. Ищем и правим ошибки, пока не налетаем на…

Python *SQL *XML *SQLite *Data Engineering *
Tutorial

Примечание. Как и первая часть эта тоже для совсем маленьких кодеров-велосипедостроителей на Питоне. Для прожженных кодеров будет скучно. Изначально хотели внести исправления сразу в первую статью по мере нахождения ошибок, но после некоторого раздумия решили, что это неудобно. Ошибки исчезнут совсем, а именно ошибки приносят максимальную пользу для начинающего кодера. А посему ошибки оставляем в первой части, а в этой начинаем от них избавляться.

окончание трилогии тут (часть 3): "Последний велосипедно-питоний бой с ошибками импорта sqlite за 2 174 433 строчки. Часть 3"

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 1K
Комментарии 2

Первый донат спустя год. FAQ Net — записная книжка, программа заметок (бесплатно)

Open source *Программирование *C# *SQLite *

Информация, которая хранится в виде файлов на наших компьютерах приобретает смысл лишь тогда, когда она упорядочена по разделам (папкам) и именам файлов.
Но даже самая упорядоченная файловая система нуждается в быстром поиске по всем документам и хочется, чтобы поиск был не только по имени файла и дате создания, но и по содержимому внутри файлов и нескольким словам сразу, независимо от их порядка. Покупая новый компьютер, все начинается с чистого диска и думаешь, что временных файлов больше не буду создавать, но этот мусор все равно накапливается со временем, если мы не пользуемся приложением для заметок. Я пользовался разными приложениями для заметок, всегда не хватало простоты и удобства в поиске информации.

Требования, которые я предъявляю к приложению для заметок

Читать далее
Всего голосов 31: ↑31 и ↓0 +31
Просмотры 12K
Комментарии 84

SQLite-песочница в браузере

Open source *JavaScript *Программирование *SQL *SQLite *

Чего мне всегда не хватало, так это аналога JSFiddle для SQLite. Онлайн-песочницы, в которой можно быстро проверить SQL-запрос и поделиться с другими.

Вот чего хотелось:

— Возможность загрузить готовую базу, а не писать SQL для создания таблиц.
— Подключать как локальные базы, так и удаленные (по url).
— Сохранять базу и запросы в облаке.
— Бесплатно и без регистрации.
— Свежайшая версия SQLite.
— Минимализм.

В итоге сделал сам
Всего голосов 70: ↑70 и ↓0 +70
Просмотры 13K
Комментарии 9

Восстановление удаленных строк в SQLite

Информационная безопасность *SQLite *
Tutorial
Хотя в SQLite и нет возможности прочитать удаленные данные после завершения транзакции, сам формат файла позволяет отчасти сделать это. Подробности — под катом.
Читать дальше →
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 4.6K
Комментарии 5

Парсим базу юриков ФНС (велосипедостроение с xml, csv, SQLite и Питоном)

Python *SQL *XML *SQLite *Data Engineering *
Из песочницы
Tutorial

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

Вводная

Что хотим сделать: взять данные по юридическим лицам (ЮЛ) РФ за 2019 год (идентификаторы ЮЛ: наименование и ИНН(ЮЛ), оборот, расход) и положить в SQLite.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 4.9K
Комментарии 15

Используем join в SQLite-запросах Room для android

Разработка под Android *SQLite *
Tutorial

Совсем недавно вышла 2.4.0-alpha04 -версия Room, которая упрощают написание методов DAO и позволяет возвращать данные запросов в формате Map<key,value>. В этом посте мы вспомним про форматы JOIN в SQLite и напишем простой пример, демонстрирующий новую фичу в Room.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 3.7K
Комментарии 2

Неопределенное поведение, пронесенное сквозь года

Open source *C++ *SQL *SQLite *GitHub
✏️ Технотекст 2021

У вас бывают в разработке такие периоды, когда что-то в коде идет не так, ты ищешь баг, а потом оказывается, что за ним стоял еще один баг? Мне нравится искать баги. Это создает ощущение словно ты Шерлок Холмс и являешься главным героем в детективе, где кто-то из обширного списка на вид безобидных классов и функций вызывает неожиданное и даже неопределенное поведение программы, а ты своим зорким взглядом и экспериментами пытаешься вычислить этого мерзавца в кратчайшие сроки.

Можно выделить несколько стадий поиска бага:

• удивление (не знаю как вы, но я каждый раз как в первый раз удивляюсь когда что-то вдруг в моем коде работает не так, как ожидается);

• обвинение всех кругом в баге (коллег по проекту, github, сторонние либы, компилятор), но только не себя;

• смирение с тем, что возможно баг появился из-за меня и поиск бага: анализ выдаваемого результата, локализация ошибки, эксперименты с входными данными; в общем, все, что делает нормальный детектив, только в сфере программирования;

• если причина бага найдена быстро, то я хвалю себя за то, что нашел баг, при этом, я не напоминаю себе, что причиной бага стал тоже я, а не коллеги по проекту, не github, не сторонние либы и не компилятор;

• если причина бага все время ускользает, то приятное ощущение того, что ты суперпупердетектив сменяется глупой злостью, и чем дольше я не могу найти причину бага, тем больше я злюсь. И вот такие истории почему-то всегда запоминаются больше всех. Об одной такой истории я вам как раз хочу поведать.

Читать далее
Всего голосов 33: ↑31 и ↓2 +29
Просмотры 5.3K
Комментарии 35

Реализация full-text поиска данных в android-приложениях через AppSearch и RxJava

Разработка мобильных приложений *Разработка под Android *SQLite *
Tutorial

Совсем недавно Google анонсировал библиотеку для локального full-text поиска документов AppSearch. Библиотека пока находится на стадии alpha-версии, но тем не менее уже можно применить её и рассмотреть ряд возможностей. В этой статье мы разработаем небольшое приложение для локального поиска разного рода документов и отобразим их пользователю на одной странице для демонстрации работы AppSearch.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.5K
Комментарии 0

Интервью с создателем SQLite (часть 2): Android 2005, хвала Кнуту, 100% тестовое покрытие, собственная CVS

Блог компании Маклауд Администрирование баз данных *SQLite *История IT Интервью
Перевод

«… я раньше думал, что могу писать программы без ошибок»

Это вторая часть интервью. Первую часть можно прочитать здесь.

Адам: Привет и добро пожаловать в CoRecursive. Я Адам Гордон Белл. В каждом эпизоде ​​CoRecursive кто-то делится увлекательной историей создания собственного программного обеспечения.

Что произойдет, если сайд-проект, который вы делали по фану, вдруг станет популярным во всём мире? Как вы будете монетизировать его? Будете ли вы уделять ему всё своё время? Будете ли вы париться на счёт его обслуживания или просто оставите сервера включёнными и соберёте для них шкаф? Мой специальный гость Ричард Хипп — разработчик SQLite — продолжает отвечать на эти и многие другие вопросы.

Во второй части интервью вы узнаете:

  • почему Ричард считает себя причастным к провалу Motorola и Nokia;
  • к каким проблемам привело масштабирование СУБД SQLite;
  • сколько тест-кейсов нужно, чтобы обеспечить ей 100-процентное покрытие;
  • о том, как Ричард добавил покрывающие индексы в SQLite;
  • почему и как Ричард разрабатывает собственную систему контроля версий;
  • какой совет он может дать младшим коллегам.
Читать дальше →
Всего голосов 49: ↑49 и ↓0 +49
Просмотры 11K
Комментарии 12

Интервью с создателем SQLite (часть 1): история создания SQLite и Консорциума, сотрудничество с Motorola, AOL и Nokia

Блог компании Маклауд Администрирование баз данных *SQLite *История IT Интервью
Перевод

Адам: Привет и добро пожаловать в CoRecursive. Я Адам Гордон Белл. В каждом эпизоде ​​CoRecursive кто-то делится увлекательной историей создания собственного программного обеспечения.

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

Ричард: Привет, я Ричард Хипп — разработчик SQLite.

Адам: СУБД SQLite вы можете встретить где угодно: в веб-браузере, в вашем телефоне, возможно, в вашей машине и даже в авиалайнерах. SQLite используют для хранения ваших сообщений в iMessages и WhatsApp. Попробуйте поискать на своём девайсе файлы с расширением .db, и вы удивитесь, насколько много баз данных SQLite окажется на борту. 
Читать дальше →
Всего голосов 49: ↑49 и ↓0 +49
Просмотры 11K
Комментарии 14

Delphi и SQLite. Альтернатива хранимым процедурам

Delphi *SQLite *
Из песочницы

SQLite во многих случаях является удобным, незаменимым инструментом. Я уже не могу себе представить - как мы все жили без него. Тем не менее, есть некоторые неудобства при его использовании, связанные с тем, что это легкая встраиваемая СУБД.

Самое большое неудобство для меня, как Delphi-разработчика - отсутствие хранимых процедур. Я очень не люблю смешивать Delphi-код и SQL-скрипты. Это делает код намного менее читабильным, и затрудняет его поддержку.

Предлагаю свой вариант решения проблемы:

Выносим весь SQL-код в отдельный файл ресурсов, подключенный к проекту

Запросы в SQL-файле разделяем маркерами начала с идентификаторами и маркерами конца

Создаем класс - менеджер SQL-запросов. При загрузке приложения он читает SQL-файл из ресурсов и составляет из него список хранимых процедур.

В процессе работы приложения менеджер извлекает текст SQL-запроса по его идентификатору для последующей его передачи на выполнение

Читать далее
Всего голосов 23: ↑23 и ↓0 +23
Просмотры 7.3K
Комментарии 135

Вклад авторов