1.1, Анонимусис (?), 11:57, 08/06/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>Добавлена поддержка операции UPSERT
а в чем отличие от уже существующей INSERT OR REPLACE?
| |
|
2.2, pmich (ok), 12:29, 08/06/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Это для совместимости с PostgreSQL. Там такая команда есть.
| |
|
3.13, nrv (ok), 16:51, 08/06/2018 [^] [^^] [^^^] [ответить]
| +/– |
А с какой целью совместимость? Для удобства разработчиков? С трудом представляется, что что-то вдруг начнут переносить с постгре на скуэльлайт.
| |
|
|
5.17, nrv (ok), 17:14, 08/06/2018 [^] [^^] [^^^] [ответить]
| +/– |
> А если с Sqlite на PostgreSQL?
Хм.. все равно - вот у вас было ПО, надо полагать, что когда вы начали его разработку, вы примерно понимали какой объем данных будет, нужен ли отдельный сервак под БД. В моем понимании sqlite - это типа журнал посещений в браузере хранить, ограничение в фурифоксе по дефолту - 350 мб - как я понимаю это и есть типичный размер БД на этой СУБД. Не сравнить с постгре. Хотя В КДЕ же, вроде, для какой-то хрени можно использовать майскуэль (на выбор склайт тоже есть) - какая-то непомук - аконади. Но, правда, мб, это сделано, чтобы конфиги всех юзеров хранить на одном серваке. Но в каком-то дистрибе, вроде по дефолту майскуэль в демонах уже был запущен.
| |
|
6.21, Crazy Alex (ok), 23:56, 08/06/2018 [^] [^^] [^^^] [ответить]
| +/– |
Классический пример - всякие бухгалтерии времён дельфей. Один бухгалтер - используем встроенный firebird. Несколько - подняли серверный вариант. Здесь можно то же самое провернуть. Для вебовских движков - тоже милое дело, если сайти мелкий на три посетителя в час - sqlite хватит, если большое - ставим постгре. Даже смигрироваться можно при нужде.
| |
|
5.20, trdm (ok), 22:16, 08/06/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> А если с Sqlite на PostgreSQL?
это возможно. Прототипирование - распространенная пактика.
| |
|
4.19, пох (?), 22:03, 08/06/2018 [^] [^^] [^^^] [ответить]
| +3 +/– |
> С трудом представляется, что что-то вдруг начнут переносить с постгре на скуэльлайт.
это "в силу того, что ваши представления ограничены".
Вот этот чувак: https://www.opennet.dev/~MBG мог бы, при желании, кое-что тебе рассказать.
(он довольно легко гуглится, не так много людей могут похвастаться тем, что существенно что-то улучшили в sqlite)
| |
|
5.25, MBG (?), 07:33, 11/06/2018 [^] [^^] [^^^] [ответить]
| +/– |
Как пример сервис с реалтайм траффиком:
http://136.243.57.100:8080/#map=12/52.5186/13.4239
Обрабатывается около 100Гб данных в сутки, поступает несколько миллионов записей ежеминутно (уникальный идентификатор автомобиля - данные GPS и проч.). Да, основная база - эскулайт с расширением spatialite, администрирование не требуется вообще. Используется полнотекстовый поиск для потайловой выборки данных, хранятся как сырые данные, так и агрегированные потайлово для тайлов всех уровней масштаба. Сервер - Intel(R) Xeon(R) CPU E3-1271 v3 @ 3.60GHz (4 ядра и 8 потоков), использовано 3ГБ ОЗУ, Load average: 3.10.
| |
|
|
|
2.23, Ilya Indigo (ok), 16:24, 09/06/2018 [^] [^^] [^^^] [ответить]
| +/– |
INSERT это INSERT. REPLACE это всегда тупо DELETE и INSERT.
UPDATE-ом тут и не пахнет.
А UPSERT это или UPDATE или INSERT.
Так понятнее?
P.S. INSERT ON DUPLICATE KEY UPDATE это тоже не аналог UPSERT.
1 Отдельно нужно указывать что и чем обновлать в случае нарушения уникальности.
2 В случае, если поле NOT NULL и не содержит DEFAULT то INSERT выдаст ошибку при отсутствии значения такому полю, даже если мы хотим обновить его. При UPDATE такого не происходит.
| |
|
|
|
|
4.18, пох (?), 18:46, 08/06/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Copyright (c) 2004 - 2013 OHTSUKA, Yoshio, его прадед на китайцах катану испытывал.
И главное - ни в коем случае не смотри в исходники самой sqlite. (нет, тебя нае...обманули. sqlite3.c это не исходник, sqlite-autoconf-3240000.tar.gz - тоже не содержит исходников)
| |
|
|
|
|