The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск СУБД SQLite 3.36"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск СУБД SQLite 3.36"  +/
Сообщение от opennews (??), 19-Июн-21, 13:10 
Опубликован релиз SQLite 3.36, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Bentley и Bloomberg...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=55354

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. Скрыто модератором  –5 +/
Сообщение от Аноним (-), 19-Июн-21, 13:10 
Ответить | Правка | Наверх | Cообщить модератору

3. Скрыто модератором  –1 +/
Сообщение от Аноним (3), 19-Июн-21, 13:21 
Ответить | Правка | Наверх | Cообщить модератору

4. Скрыто модератором  +1 +/
Сообщение от Аноним (4), 19-Июн-21, 13:59 
Ответить | Правка | Наверх | Cообщить модератору

7. Скрыто модератором  –5 +/
Сообщение от Fracta1L (ok), 19-Июн-21, 14:49 
Ответить | Правка | Наверх | Cообщить модератору

36. Скрыто модератором  +/
Сообщение от deeaitch (ok), 25-Июн-21, 22:11 
Ответить | Правка | Наверх | Cообщить модератору

5. Скрыто модератором  –1 +/
Сообщение от acroobat (??), 19-Июн-21, 14:03 
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

2. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Аноним (2), 19-Июн-21, 13:20 
>> Обеспечена генерация ошибки при попытках доступа к идентификатору строки (rowid) в представлении (VIEW) или подзапросе. Для возвращения возможности доступа к rowid для представлений предусмотрена сборочная опцмия "-DSQLITE_ALLOW_ROWID_IN_VIEW"

А почему?

Ответить | Правка | Наверх | Cообщить модератору

8. "Выпуск СУБД SQLite 3.36"  +5 +/
Сообщение от x3who (?), 19-Июн-21, 15:04 
Перевод не очень удачный. У вьюх и поздапросов не может быть своих ROWIDов, поэтому обращаться к ним - плохая примета. Но, поскольку у корпорастов принято всё делать в трансанальном стиле, то для них оставили лазейку с опцией SQLITE_ALLOW_ROWID_IN_VIEW при включении которой они будут получать значение -1 (кажется).
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск СУБД SQLite 3.36"  +2 +/
Сообщение от Аноним (-), 19-Июн-21, 17:32 
ну в корпорастных как ты изволил выразиться базах вполне себе можно писать во вьюхи, что тут такого плохого. Если отношение не биективно, но тебе просто не даст писать
Ответить | Правка | Наверх | Cообщить модератору

19. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Михрютка (ok), 19-Июн-21, 22:19 
>>> У вьюх и поздапросов не может быть своих ROWIDов

товарищ, у вас гибернатор разморозился.

1) нет причин, по которым single table view не может иметь rowid
2) rtfm://"updatable join view"

Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

23. "Выпуск СУБД SQLite 3.36"  +1 +/
Сообщение от x3who (?), 20-Июн-21, 01:41 
> 1) нет причин, по которым single table view не может иметь rowid

Нет, запись в таблице может иметь rowid, и такое вполне себе работает в сабжевой версии:

create table test(i integer primary key, s text);

create view vtest as select rowid as 'rowid', i, s from test;

> 2) rtfm://"updatable join view"

The 'O' in "SQLite" stands for "Oracle". Вы, товарищ, многого ждёте от встраиваемой БД.
В SQLite вьюхи тупо не апдейтятся [1]. Но можно повесить триггер, который будет делать инсерт или апдейт соответствующей или вообще другой таблицы. Только вью не узнает что там в результате изменилось. Например продолжим издеваться над vtest созданным выше:

create trigger TTestInsert instead of insert on vtest begin insert into test values (new.i, 'LOL!'); end;

create trigger TTestUpdate instead of update on vtest begin update test set i=new.i, s='BWOGHAGHA' where i=old.i and s=old.s; end;

insert into vtest(s) values('x') returning *;
<null> | <null> | x

select * from vtest;
22 |22 | LOL!

update vtest set s='y' returning *;
<null> | 22 | y

select * from vtest;
22 | 22 | BWOGHAGHA

Вот как-то примерно так.


Список литературы:

[1] https://sqlite.org/omitted.html

Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск СУБД SQLite 3.36"  +1 +/
Сообщение от x3who (?), 20-Июн-21, 02:15 
Ну и до кучи проверил в постгресе пункт (1)
Если явно не включать в текст запроса во вьюхе oid - то и в Pg заселектить его из вьюхи не получится, ровно как в SQLite:

create table test(i serial primary key, s text) with oids;
create view vtest as select * from test;

insert into vtest(s) values ('a') returning *; -- works
insert into vtest(s) values ('b') returning oid,*; -- failing
insert into  test(s) values ('c') returning oid,*; -- works

select oid, ctid, i, s from test;  -- works
select oid, i, s from vtest; -- failing

В Оракле проверять лень..

Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Аноним (12), 19-Июн-21, 16:44 
Используют для разработки, кстати, fossil, а не git
Ответить | Правка | Наверх | Cообщить модератору

13. "Выпуск СУБД SQLite 3.36"  +2 +/
Сообщение от Аноним (-), 19-Июн-21, 17:31 
наверное потому что Рич написал fossil тоже
Ответить | Правка | Наверх | Cообщить модератору

20. "Выпуск СУБД SQLite 3.36"  –1 +/
Сообщение от Михрютка (ok), 19-Июн-21, 22:23 
>>>потому что Рич написал fossil

господи и он фидошник штоль?

Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск СУБД SQLite 3.36"  –2 +/
Сообщение от Аноним (15), 19-Июн-21, 17:42 
Лишь бы не rust
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

17. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Аноним (17), 19-Июн-21, 18:16 
Почему?
Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск СУБД SQLite 3.36"  –2 +/
Сообщение от Туши пукан (?), 19-Июн-21, 22:24 
Rust его и многих других впопеннетчиц в детстве гнобил 🤣 Детские-с травмы, сэр!
Ответить | Правка | Наверх | Cообщить модератору

35. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от пох. (?), 24-Июн-21, 12:54 
Чувак, они tcl используют, настолько немодные. Хруст им не грозит еще лет сорок.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

16. "Выпуск СУБД SQLite 3.36"  –1 +/
Сообщение от Аноним (17), 19-Июн-21, 18:15 
Хорошая СУБД
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск СУБД SQLite 3.36"  +3 +/
Сообщение от Lex (??), 19-Июн-21, 19:06 
Все-таки, неплохая БД.
На днях ее как раз поминал, когда потребовалось вытащить часть файлов из бэкапа яблочно устройства.. а там они - в каталогах с именами с 00 по ff, вместо имен файлов - хеши и без каких-либо расширений. Притом, все вперемешку от фоток и заметок и до смс'ок, контактов, закладок и приложений. Сопоставления между именами в резервной копии, реальным именем, адресом и к чему относится - в многомегабайтной БД.

Слава б.-гу, что, если где и попадаются встраиваемые бд, то это скорее всего "оно" и его запросто можно расковырять весьма обширным инструментарием, а то и скрипты какие-нибудь набросать по быстрому.

Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск СУБД SQLite 3.36"  –1 +/
Сообщение от Аноним (22), 19-Июн-21, 23:40 
Чем оно лучше firebird?
Ответить | Правка | Наверх | Cообщить модератору

26. "Выпуск СУБД SQLite 3.36"  +1 +/
Сообщение от Аноним (2), 20-Июн-21, 08:31 
чем firebird ))
Ответить | Правка | Наверх | Cообщить модератору

31. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Егор (??), 20-Июн-21, 22:37 
Удобвством интеграции в проект. Никаких пакетов и зависимостей. Один файл с исходным кодом на C и заголовочный, и sqlite используется в программе.
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

25. "Выпуск СУБД SQLite 3.36"  –1 +/
Сообщение от acroobatemail (??), 20-Июн-21, 06:41 
Чем Dqlite не угодил?
Ответить | Правка | Наверх | Cообщить модератору

27. "Выпуск СУБД SQLite 3.36"  +2 +/
Сообщение от Аноним (2), 20-Июн-21, 08:31 
какой-то неведомый труп студента
Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от kai3341 (ok), 20-Июн-21, 17:40 
Я снова упёрся рогом в отсутствие явных секвенсов =/

На запрос в гугле `sqlite sequence` всплывает статья на сайте разработчика SQLite, где автор др*чит на автоинкременты.

Причём печаль в том, что автоинкремент фактически реализует функционал секвенса. В SQLite есть всё, чтобы реализовать явные секвенсы. Но их нет.

Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Аноним (29), 20-Июн-21, 18:25 
У тебя в языке нет мьютекса или переменных?
Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Егор (??), 20-Июн-21, 22:44 
Ты странный. sqlite не предназначен для параллельной модификации данных. Поэтому и генераторы уникальных последовательностей не нужны.
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

37. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от kai3341 (ok), 04-Июл-21, 22:34 
> Ты странный. sqlite не предназначен для параллельной модификации данных. Поэтому и генераторы
> уникальных последовательностей не нужны.

сгенерируйте мне уникальную последовательность для НЕ первичного ключа? Например, для связи many-to-many?

Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от iZENemail (ok), 20-Июн-21, 19:23 
Embarcadero сделала InterBase 2020, в том числе для Android. Зачем что-то ещё?
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск СУБД SQLite 3.36"  +1 +/
Сообщение от муу (?), 21-Июн-21, 03:28 
дед, ты опять таблетки выпить забыл?
Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск СУБД SQLite 3.36"  +/
Сообщение от Аноним (34), 21-Июн-21, 12:24 
проприетарный какашок.

а сабж давно под ведройдом работает...

Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру