Рубрика «sqlite» - 8

На счёт БД на первый взгляд может показаться, что функциональность из коробки весьма скудная. Отчасти это правда, но компенсируется тем, арсенал очень хорошо продуман, решает поставленные задачи и ориентирован на производительность.
А если вам нужны более функциональные инструменты — их всегда можно до установить по вкусу, это гораздо проще чем выпилить сложного медлительного монстра.

Данная статья покажет основные интерфейсы, а трейты csCRUD и csCRUD_helpers останутся на другой раз.

Читать полностью »

Приветствую, уважаемое сообщество!
Забегая вперед прошу прощения у тех, кто ожидает новизны или революционных идей. Их тут нет. Но есть вполне хорошая прикладная система.
Системы поддержки принятия решений сейчас набирают обороты. Причем я не буду особо останавливаться на перечислении способов реализации. Оговорюсь только об основных свойствах.
Я бы очень упрощенно и обобщенно назвал эти системы вероятностными. То есть они выдают рекомендации с известной долей вероятности используя накопленную и проанализированную статистику. Не скажу что это плохо. Тема BigData и Machine learning нынче в тренде. Так же эти системы работают по принципу черного ящика. Поэтому проверить достоверность работы заложенной модели не всегда можно выявить.Читать полностью »

Web scraping обновляющихся данных при помощи Node.js и PaaS - 1Это уже четвёртая статья в цикле про веб-скрейпинг при помощи Node.js:

  1. Web scraping при помощи Node.js
  2. Web scraping на Node.js и проблемные сайты
  3. Web scraping на Node.js и защита от ботов
  4. Web scraping обновляющихся данных при помощи Node.js

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

В этой статье разбираются такие темы, как веб-скрейпинг регулярно обновляющихся данных, отслеживание изменений и использование облачных платформ для запуска скриптов и сохранения данных. Ещё внимание уделяется разделению задач веб-скрейпинга и обработки готовых данных, а также тому, чего стоит избегать при работе с обновляющимися сайтами.

Цель статьи – показать весь процесс создания, развёртывания и использования скрипта от постановки задачи и до получения конечного результата. Как обычно, для примера используется реальная задача, какие часто встречаются на биржах фриланса.

Читать полностью »

imageКазалось бы, каждый, кто осваивает ардуино, первым делом конструирует или повторяет прибор для измерения температуры и(или) прочих параметров окружающей среды. Только большинство подобных конструкций, к сожалению, мало применимы в домашнем хозяйстве — в качестве тренировки сгодится, а пользы нет. Попробуем исправить эту недоработку. В статье расскажу о создании комплекса для измерения и хранения любых данных на примере сбора показаний датчиков температуры, влажности воздуха и атмосферного давления. Начну с требований к прибору и описания протокола обмена, закончу web-службой для получения данных из БД. Подробных выкладок и пошаговых руководств не будет, но будет немного теории и много кода.

Читать полностью »

Теперь немного о самой задумке. Предполагается, что программа будет соответствовать следующим условиям:

  • Максимально возможная переносимость,
  • Быстрый унифицированный интерфейс,
  • Возможность максимально быстрого изменения данных,
  • Отсутствие необходимости в фиксации времени модификации документа,
  • Необходимость в отслеживании баланса по клиентам (сальдо).

Программа должна определённым образом управлять информацией. На входе ей должны предоставляться:

  • Данные о клиенте: имя / наименование и связаные телефоны, причём телефонов может быть больше двух;
  • Данные о позиции: наименование и стоимость. Данный тип используется для фиксаций операций и затрат — то есть, позиция может иметь как отрицательную, так и положительную стоимость (выплаты заказчика + затраты на оборудование / дорогу / операции и прочие радости);
  • Данные для формирования документа, собраные из предыдущих;

На выходе пользователь должен получать следующую структуру:

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

Читать полностью »

Задача: взять / сделать микроучётную систему для записи прихода / расхода. Исходная система: Alt Linux 7.0

На альте такие вещи реализовываются через различные связки: Framework + PostgreSQL, FPC + Firebird (superserver / portable). Поскольку речь идёт о создании простой программы с базой (ибо Firebird хоть и хорош для хранения больших данных, у него есть «приколы» при работе со связями и отображениями; хранимые процедуры, конечно, это круто, но без корректного механизма отображений и связей это тот ещё геморрой — ждать подтверждение каждой транзакции / записи не прикольно). Связка Ananas + Firebird / MySQL / PostgreSQL (нужное дополнить) не подходит по следующим причинам:

  • Громоздкость приложения во время выполнения, даже если речь идёт о нескольких справочниках с формами.
  • Сбойность самой платформы даже при простом добавлении данных в справочник.
  • Необходимость шаманства с подключением базы чуть ли не при каждом запуске.
  • Некорректно описанный внутренний язык бизнес-приложений — отсутствуют примеры, неудобочитаемый синопсис.
  • Тяжёлая переносимость бизнес-платформы между рабочими станциями.

В итоге выбор остановился на связке Lua + SQLite3. Поскольку всё происходило в Alt Linux 7.0, с интерпретатором пришлось помучиться.

  • Во-первых, в наличии была только версия 5.1.4.
  • Во-вторых, указанная версия версия состояла только из интерпретатора и базовых библиотек. Ни о каком-либо luarocks или luasql речь просто не шла. Окей, вызов принят.

Читать полностью »

Очередная Reflection Library и ORM для C++ - 1

Сразу же предупрежу о велосипедности выдаемого здесь на обозрение. Если прочтение заголовка вызывает лишь с трудом подавляемый возглас «Твою мать, только не новый таксон ORM!», то лучше наверное воздержаться от дальнейшего чтения, дабы не повышать уровень агрессии в космологическом бульоне, в котором мы плаваем. Виной появлению данной статьи явилось то, что в кои-то веки выдался у меня отпуск, в течение которого решил я попробовать себя на поприще написания блогопостов по околохабровской тематике, и предлагаемая тема мне показалась вполне для этого подходящей. Кроме того, здесь я надесь получить конструктивную критику, и возможно понять чего же еще с этим можно сделать этакого интересного. В конце будет ссылка на github-репозиторий, в котором можно посмотреть код.
Читать полностью »

На просторах интернета много отрывочной информации о той или иной ORM для Андроид. Пока что мне не попадалось качественное сравнение ведущих ORM. Существующие статьи попахивают пиаром той или иной системы и ставят в невыгодное положение своих конкурентов либо некорректной постановкой тестирования, либо вообще использованием заведомо неверных настроек, либо не включением в тестирование сильных соперников.

Данное тестирование проведено было скорее для собственного интереса. Т.к. ORM много, все они разные, и хотелось бы иметь объективное представление о существующих системах.
Читать полностью »

Сначала хотелось бы ввести несколько тезисов о том, о чём будет написано в этой статье:

1. Пост посвящён процессу создания и конечному продукту для станции технического обслуживания автомобилей (далее СТО).
2. Программа написана на языке программирования Delphi в среде программирования Embarcadero Delphi 10 Seattle.
3. В программе используется подключение к FTP-серверу, базы данных SQLite, взаимодействие с реестром компьютера (OS Windows).
4. «Garage» разработана для OS Windows и OS Android.
5. Различные темы оформления созданы с помощью библиотеки нестандартных компонентов AlphaControls.

Итак, пожалуй, начнём.
Читать полностью »

Популярная в Android-среде СУБД SQLite позволяет организовывать удобные хранилища данных, её возможностей достаточно для многих приложений, но не для тех, что работают с информацией, которую надо защищать.

Компиляция SQLCipher для Android x86 - 1

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js