Size: a a a

2020 November 25

A

Alex in Delphi & Lazarus
Ок, спасибо, поищу...
источник

DB

Dmitry Belkevich in Delphi & Lazarus
Alex
Ок, спасибо, поищу...
вот хотя бы тема, пачка ссылок и кода. ищи в общем:
https://www.sql.ru/forum/1243618-a/otkryt-pdf-iz-memorystream?hl=pdf
источник

MS

Mr Smith in Delphi & Lazarus
Serjone
Есть желание написать свой велосипед. Программа учёта юзеров сети и оборудования в фирме.
Базы данных не писал уже лет десять. Раньше тупо подключал микрософтоаксессовскую базу и в ней работал.
Сейчас хочу сделать что-то менее зависящее от сильно сторонних производителей. Смотрю в сторону sqllite. На сколько нормально на нем писать такие штуки? Есть ещё варианты? В идеале получить портабельную программу, которая запустится на любом компе с флешки.
Хороший вариант, но у sqllite нет из коробки поддержки регистра строк в select и тд
источник

S

Serjone in Delphi & Lazarus
Alexey Shumkin
Нет, код одинаковым не будет :)
Но минимизировать разницу можно..
Одна из главных разниц - например, нотация путей файловой системы
+ Не стоит писать конфиги рядом с исполняемым файлом :)
Почему не надо конфиги рядом класть?
источник

S

Serjone in Delphi & Lazarus
Mr Smith
Хороший вариант, но у sqllite нет из коробки поддержки регистра строк в select и тд
Чем это чревато?
источник

RS

Renat Suleymanov in Delphi & Lazarus
Serjone
Почему не надо конфиги рядом класть?
Это не Linux- way. КОнфиги отдельно, бинарники отдельно. Я правда этим грешу признаться иногда. Даже в Linux
источник

RS

Renat Suleymanov in Delphi & Lazarus
Да и логи тоже нежелательно хранить в папке с бинарником. Для этого должны быть соответствующие места или даже демон
источник

AD

Aleksandr Duduk in Delphi & Lazarus
Serjone
Чем это чревато?
Ну как вариант когда несколько пользователей работают с одним экземпляром программы то будет использоваться один и тот же конфиг файл. Хотя этот вариант можно обойти, если каждый пользователь будет работать с программой в своей папке.
источник

MS

Mr Smith in Delphi & Lazarus
Serjone
Чем это чревато?
При выполнении запроса, строки регистрозависимы и придётся с этом бороться, например like '%привет%' сможет и не найти поскольку Привет записан с большой буквы в базе. Для ansi кодировки это не проблема, а вот с  остальными языками проблема. Есть решение в виде пересбора библиотеки с этой поддержкой, но это нужно сильно заморочиться
источник

AD

Aleksandr Duduk in Delphi & Lazarus
@Serjone123 Запутался в сообщениях, не вам писал)
источник

AD

Aleksandr Duduk in Delphi & Lazarus
@Serjone123 Хотя вам, но не на то сообщение
источник

AK

Alexey Kulakov in Delphi & Lazarus
Mr Smith
Хороший вариант, но у sqllite нет из коробки поддержки регистра строк в select и тд
в смысле - нет?
источник

AK

Alexey Kulakov in Delphi & Lazarus
LIKE - регистрозависимый, а что насчёт GLOB ?
источник

MS

Mr Smith in Delphi & Lazarus
Alexey Kulakov
в смысле - нет?
Для русского текста нет поддержки регистронезависимого like. Это точно. Пользователь вводит строку в фильтр для отсеивания и как штатными средствами выбирать записи, правильно руками.
источник

KB

Kit Bayun in Delphi & Lazarus
Alexey Kulakov
LIKE - регистрозависимый, а что насчёт GLOB ?
а что, нет чего-то типа UPPER()?
источник

MS

Mr Smith in Delphi & Lazarus
Alexey Kulakov
LIKE - регистрозависимый, а что насчёт GLOB ?
Не проверял, думаю на сайте можно глянуть
источник

MS

Mr Smith in Delphi & Lazarus
Kit Bayun
а что, нет чего-то типа UPPER()?
Есть, но только для Ansi
источник

AK

Alexey Kulakov in Delphi & Lazarus
ну да, уточнил... Лайк - регистронезависимый для латиницы и регистрозависимый для нелатинского юникода. Глоб - строго регистрозависимый
источник

AK

Alexey Kulakov in Delphi & Lazarus
"The ICU extension to SQLite includes an enhanced version of the LIKE operator that does case folding across all unicode characters."
источник

RS

Renat Suleymanov in Delphi & Lazarus
Но это все можно обойти, зная эту особенность
источник