A 82, вроде нет, extern "C" вроде только заставляет компилятор не «портить» имена функций. На платформе x64 есть только два соглашения о вызовах (fastcall): Microsoft (на Windows) и System V (на *nix и Mac OS), а обычные ключевые слова типа cdecl, stdcall и прочие являются синонимами к этому единственному fastcall.
Ivan, тут, похоже, дело в том, как SQLite хранит типы. Детально его не изучал, но из использования слова “affinity” в описании типов предполагаю, что для таблиц, не объявленных как strict (это важно и упоминается в цитате YepBro), в определении таблицы внутри самого SQLite тип хранится в том виде, в каком он был объявлен, а правила сродства (affinity) действуют как вывод типов и применяются на лету при определении фактических типов.
Можно предположить, что ваши таблицы созданы ORM не как strict. Если, например, попробовать создать копию таблицы в режиме strict, у колонок будут уже фактические типы (не знаю, поддерживается ли такой синтаксис в SQLite, не проверял):
create strict table strict_article as
select * from article
Могу, конечно, ошибаться, но это самое логичное объяснение.
а как понять column_value charge_start_date, это первое значения из той таблице что вернёт функция?
Это column_value as charge_start_date, записанное без as. В MySQL тоже сработает. Во всех СУБД можно, само ключевое слово необязательное, кроме некоторых исключений.
Я вот всё удивлялся, почему у меня данные никогда не повреждаются в MariaDB, пока не волею случая не загрузил дамп оригинального MySQL с таблицами типа MyISAM. Через какое-то время — хоба, данные повредились, пришлось запускать mysqlcheck.
Поизучал теорию и оказалось, что тип таблиц Aria хоть и считается заменой MyISAM, в нем есть транзакции! Так что советую. Так-то транзакции есть в InnoDB, но для моего случая типа Aria оказалось достаточно.
Procrastinationator, выводить их в окно и захватывать соответствующую часть экрана, вырезая фильтром. Или же посмотреть, не научился ли ffmpeg захватывать сразу окно. Под XP такого не могло быть, там WDDM нет (окно — не поверхность DirectX, а просто пятно на экране).
Артём Варламов, тогда не знаю. В том, что выдает скрипт, ногу сломишь. Где там сообщение об ошибке? Удобство для пользователей 146%.
Вот мой опыт. Как понимаю, все эти ACME одинаковые, только ваш написан на Python, а мой — на bash-e. Сообщения об ошибках зато понятные, а не стеки какие-то.
git reset --hard HEAD~1
Цифра — на сколько коммитов откатываться. Если поставить 2 — на 2 коммита, 5 — на 5 и так далее.