Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 6 [7] 8 9 10 11 12   вперед  Ctrl      все
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
SELECT 
    *
  FROM tmpPerson
    INNER JOIN Persons ON Persons.idPerson = tmpPerson.ID
    INNER JOIN  tmpSMO ON tmpSMO.RDB$DB_KEY =
    (SELECT FIRST 1 tmpSMO1.RDB$DB_KEY FROM tmpSMO tmpSMO1  WHERE tmpSMO1.[code] = [tmpPerson].[GIVING_INS] )
    /*ну и так далее*/
8 сен 09, 09:17    [7629675]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
FreemanZAV,

Вот это вот подзапрос

автор
(SELECT FIRST 1 tmpSMO1.RDB$DB_KEY FROM tmpSMO tmpSMO1 WHERE tmpSMO1.[code] = [tmpPerson].[GIVING_INS] )


Нормально отработает во FROM, учитывая, что [GIVING_INS] из "внешнего" запроса?
8 сен 09, 09:39    [7629762]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
pkarklin
FreemanZAV,

Вот это вот подзапрос

автор
(SELECT FIRST 1 tmpSMO1.RDB$DB_KEY FROM tmpSMO tmpSMO1 WHERE tmpSMO1.[code] = [tmpPerson].[GIVING_INS] )


Нормально отработает во FROM, учитывая, что [GIVING_INS] из "внешнего" запроса?

Как песня
8 сен 09, 09:40    [7629769]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
А что, стандарт запрещает использовать коррелированный подзапрос в условии ON?
P.S. скобки [] нужно убрать конечно
8 сен 09, 09:45    [7629783]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
tip78
Member

Откуда: Москва
Сообщений: 1266
Chys
- SQLite сам про себя говорит, что непригоден для клиент/сервер архитектуры;


зато надёжен и быстр на самом сервере
а в качестве клиент/сервер архитектуры можно фронт-энд напрограммить
1 дек 09, 22:16    [8005267]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
Как-то раз запустил холостой update на MSSQL типа:
update table1 set id = id
где table1 - это таблица-справочник около 5к записей, на таблице висел триггер, задачей которого был пересчет некоторый полей этой-же таблицы. В БД (размер около 100Гб) было около 10-ти подключений.
В результате запрос завис, пользователи тоже "отдыхали", админ БД все это усек и срубил запрос и попросил больше так не делать :) Недостатки блокировочника, млин ...

В FB это все прошло-бы мгновенно и незаметно для пользователей, ибо версионник.

П.С. Жесткая привязка MSSQL к одной ОС несколько пугает ...
7 дек 09, 14:33    [8029201]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Roman Yaroshenko
В результате запрос завис, пользователи тоже "отдыхали", админ БД все это усек и срубил запрос и попросил больше так не делать :) Недостатки блокировочника, млин ...

В FB это все прошло-бы мгновенно и незаметно для пользователей, ибо версионник.


Мдя... Уже 5 лет, как MS SQL по желанию или блокировочник, или версионник или даже местами блокировочник и местами версионник.

Roman Yaroshenko
П.С. Жесткая привязка MSSQL к одной ОС несколько пугает ...


Гы... Кого и чем?!
8 дек 09, 11:11    [8033184]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Infernal V. Raven
Member

Откуда: St.Petersburg
Сообщений: 1710
Roman Yaroshenko,

кривые руки бывают у программистов оракла, мс скл, фб, кривизна которых не зависит от СУБД.
8 дек 09, 11:16    [8033238]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
Infernal V. Raven

кривые руки бывают у программистов оракла, мс скл, фб, кривизна которых не зависит от СУБД.


Какие еще у вас имеются аргументы?

Никто не спорит, что каждая СУБД имеет свои ньансы использования, но такие элементарные вещи как холостой update должны отрабатывать на любой СУБД без проблем. У MSSQL с этим проблемы ...
8 дек 09, 18:41    [8037398]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Roman Yaroshenko

Никто не спорит, что каждая СУБД имеет свои ньансы использования, но такие элементарные вещи как холостой update должны отрабатывать на любой СУБД без проблем. У MSSQL с этим проблемы ...
У MSSQL, нет проблем с update. Это у вас проблемы с триггером, вероятная причина - кривые руки.
8 дек 09, 18:47    [8037415]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54850

Зайцев Фёдор
У MSSQL, нет проблем с update.

Хотите сказать, что холостой update на миллионной табличке не забьёт
tempdb под завязку табличками deleted-inserted?

Posted via ActualForum NNTP Server 1.4

8 дек 09, 19:10    [8037474]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
Зайцев Фёдор
Roman Yaroshenko

Никто не спорит, что каждая СУБД имеет свои ньансы использования, но такие элементарные вещи как холостой update должны отрабатывать на любой СУБД без проблем. У MSSQL с этим проблемы ...
У MSSQL, нет проблем с update. Это у вас проблемы с триггером, вероятная причина - кривые руки.


Еще один специалист по кривизне рук ...

Правильно, :) проблемы с триггером в MSSQL, для отработки которого нужно сначала затратить время на создание временной таблицы "updated" + предварительно заблокировать всю изменяемую таблицу.
8 дек 09, 19:21    [8037514]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Dimitry Sibiryakov

Зайцев Фёдор
У MSSQL, нет проблем с update.

Хотите сказать, что холостой update на миллионной табличке не забьёт
tempdb под завязку табличками deleted-inserted?

обратное утверждение просто нелепо, правда.

З.Ы.
надеюсь, семейство не пополнится трассирующими, зажигательными, бронебойными и разрывными update-ми..
8 дек 09, 19:26    [8037527]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Roman Yaroshenko

Правильно, :) проблемы с триггером в MSSQL, для отработки которого нужно сначала затратить время на создание временной таблицы "updated" + предварительно заблокировать всю изменяемую таблицу.
В данном случае :
1) затраты на создание inserted и deleted ничтожны.
2) вы добровольно и сознательно выполняете все действия в триггере. не взирая на то, что "изменилось" только одно поле, действительных изменений нет, расчёты судя по всему не требуются

этот парашют вы укладывали сами, счастливого полёта.

у блокировочника есть свои проблемы, этот случай имеет совсем другую природу
8 дек 09, 19:43    [8037575]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
Dimitry Sibiryakov

Хотите сказать, что холостой update на миллионной табличке не забьёт
tempdb под завязку табличками deleted-inserted?

Именно в данном случае не забъёт

Зайцев Фёдор
расчёты судя по всему не требуются

Тут трудно возразить

Зайцев Фёдор
у блокировочника есть свои проблемы, этот случай имеет совсем другую природу

Тут я тоже соглашусь. MSSQL апдейты выполняет шустрее, и триггеры на обновлении больших объёмах данных в одном стэйтменте тоже должны работать быстрее. Вот ежели множество мелких модификаций, тут ситуация может быть иная.
8 дек 09, 20:04    [8037632]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
Зайцев Фёдор

2) вы добровольно и сознательно выполняете все действия в триггере. не взирая на то, что "изменилось" только одно поле, действительных изменений нет, расчёты судя по всему не требуются

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

Примером может быть изменение алгоритма расчета контрольной суммы по строке.
8 дек 09, 20:15    [8037649]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov

Зайцев Фёдор
У MSSQL, нет проблем с update.

Хотите сказать, что холостой update на миллионной табличке не забьёт
tempdb под завязку табличками deleted-inserted?


Т.е. проблемма тока в месте в tempdb?
8 дек 09, 20:21    [8037657]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
pkarklin
Dimitry Sibiryakov

Зайцев Фёдор
У MSSQL, нет проблем с update.

Хотите сказать, что холостой update на миллионной табличке не забьёт
tempdb под завязку табличками deleted-inserted?


Т.е. проблемма тока в месте в tempdb?
Нет, в "прожорливости" сервера.
И не только tempdb, но и файлы логов пухнут неплохо.
8 дек 09, 21:31    [8037790]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Senya_L
pkarklin
Т.е. проблемма тока в месте в tempdb?
Нет, в "прожорливости" сервера.
И не только tempdb, но и файлы логов пухнут неплохо.


Ну, дык, "искуство требует жертв". И залоггировать все надо, чтоб откатить в случае чего, и RVS заполнить, дабы не мешать читателям и inserted с deleted кормить. ;)

Сообщение было отредактировано: 8 дек 09, 23:35
8 дек 09, 21:37    [8037813]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Roman Yaroshenko
Зайцев Фёдор

2) вы добровольно и сознательно выполняете все действия в триггере. не взирая на то, что "изменилось" только одно поле, действительных изменений нет, расчёты судя по всему не требуются

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

Примером может быть изменение алгоритма расчета контрольной суммы по строке.

Вы уж определитесь - либо холостой апдейт, либо идёт пересчет полей таблицы.
8 дек 09, 23:32    [8038077]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
SergSuper
Вы уж определитесь - либо холостой апдейт, либо идёт пересчет полей таблицы.


Нет уж - это вы определитесь, что для вас холостой update. Он делается только лишь с одной целью - выполнить триггер.

П.С. Как все-таки любители MSSQL пытаются спрыгнуть с темы ...
9 дек 09, 01:51    [8038205]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Roman Yaroshenko

Нет уж - это вы определитесь, что для вас холостой update. Он делается только лишь с одной целью - выполнить триггер.

П.С. Как все-таки любители MSSQL пытаются спрыгнуть с темы ...

Просто выполнить триггер - довольно странная цель.
Судя по всему, вы решили продемонстрировать свою способность выстрелить себе в ногу.
Это лишнее, достаточно яда и стены.
9 дек 09, 02:10    [8038212]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Roman Yaroshenko
SergSuper
Вы уж определитесь - либо холостой апдейт, либо идёт пересчет полей таблицы.


Нет уж - это вы определитесь, что для вас холостой update. Он делается только лишь с одной целью - выполнить триггер.

П.С. Как все-таки любители MSSQL пытаются спрыгнуть с темы ...


Если не сложно - выложите тынц на сайт с вашей терминологией, дабы мы взяли себе за труд ознакомится с ней и изучить.
А то, понимаешь, всё как-то с темы спрыгиваем, не понимаем о чем человек говорит....

зы а почему "холостой" а не "неженатый"?
9 дек 09, 02:36    [8038222]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
Roman Yaroshenko
Member

Откуда: Ukraine, Kiev
Сообщений: 48
Зайцев Фёдор
Просто выполнить триггер - довольно странная цель.

М-да. Тут действительно лучше выпить йаду и апстену. :) Если вы не использовали сего в своей практике, то и не пытайтесь - MSSQL этого не любит, а вы, сюдя по активности в форумах, его ярый приверженец.
9 дек 09, 02:42    [8038225]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL Express vs PostgreSQL/SQLite/FireBird  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Roman Yaroshenko
Зайцев Фёдор
Просто выполнить триггер - довольно странная цель.

М-да. Тут действительно лучше выпить йаду и апстену. :) Если вы не использовали сего в своей практике, то и не пытайтесь - MSSQL этого не любит, а вы, сюдя по активности в форумах, его ярый приверженец.

Я лично в своей практике триггера вообще не использую, чего и вам желаю
9 дек 09, 02:46    [8038226]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 6 [7] 8 9 10 11 12   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить