Форум: "Прочее";
Текущий архив: 2010.02.07;
Скачать: [xml.tar.bz2];
ВнизБольшие таблицы Найти похожие ветки
← →
Petr V. Abramov © (2009-11-30 15:33) [40]
> картман © (30.11.09 15:30) [39]
> ужас. Я в шоке.
>
от чего ты в шоке? от того, что скорость селекта разная на 1000 записей и на миллионе?
← →
Anatoly Podgoretsky © (2009-11-30 15:34) [41]> картман (30.11.2009 15:30:39) [39]
Легко проверить, если изменить запрос на
Insert into 1
Insert into 2
и во встором инсерте сделать ошибку, далее посмотреть вставился ли 1 или отменен.
И тогда не надо будет впадать в ужас, а сразу станет ясно, кто прав, а кто нет
← →
картман © (2009-11-30 15:41) [42]
> Anatoly Podgoretsky © (30.11.09 15:34) [41]
ну да, действительно, просто не думал, что для селекта тоже... мда...
> И тогда не надо будет впадать в ужас, а сразу станет ясно,
> кто прав, а кто нет
да я не оспариваю Вашу правоту и других - немного пошутил:)
Итак:
start transaction
begin try
...
commit transaction
end try
begin catch
rollback transaction
end catch
Изменения в скорости не наблюдаются - либо новый код не подгрузился, либо собака рылась не тут:(
Искренне надеюсь на разнообразие интересов друга человеческого.
← →
Игорь Шевченко © (2009-11-30 15:42) [43]
> ...
а тут что ?
← →
картман © (2009-11-30 16:00) [44]
> Игорь Шевченко © (30.11.09 15:42) [43]
а тут плохая программа:
declare a int, b int, c int
if exists(select * from ...)
select a = id from table 1 where ...
if exists(select * from ...)
select b = id from table 1 where ...
if exists(select * from ...)
select c = id from table 1 where ...
if exists(select * from ...)
insert into...
изменить все это можно только переделав службу, написанную на шарпе, код которого вызывает у меня рвотный рефлекс, плюс, данные нужно передавать xml, который я не знаю как обрабатывать в SQL Server.
← →
Anatoly Podgoretsky © (2009-11-30 16:03) [45]> картман (30.11.2009 15:41:42) [42]
Ну почему же, как раз надо оспаривать, поскольку два разных противоположных ответа и делать это именно тебе, поскольку именно тебя это интересует.
← →
clickmaker © (2009-11-30 16:03) [46]> if exists(select * from ...)
> select a = id from table 1 where ...
надеюсь, не if exists(select * from table 1 ?
← →
Игорь Шевченко © (2009-11-30 16:04) [47]картман © (30.11.09 16:00) [44]
Тогда смирись с проблемами - подумаешь, медленно добавляется. Ну и фиг с ним.
← →
картман © (2009-11-30 16:13) [48]
> clickmaker © (30.11.09 16:03) [46]
описался
> Игорь Шевченко © (30.11.09 16:04) [47]
Вы как всегда добавляете мне мотивации и учите правильно работать:)
Как бы там ни было, избавиться от нескольких запросов к разным таблицам при вставке не получится. Никак - такова специфика.
А если анализируемые данные добавлять в отдельную таблицу, а потом все перегонять в основную одним запросом - такой велосипед имеет право на жизнь?
> Anatoly Podgoretsky © (30.11.09 16:03) [45]
Почему они два разных, да еще и противоположных?)))
← →
Anatoly Podgoretsky © (2009-11-30 16:24) [49]> картман (30.11.2009 16:13:48) [48]
Ты спрашивал, сколько транзакций и получил два ответа - одна и две.
Я предложил способ это проверить.
← →
b z (2009-11-30 16:34) [50]
> данные нужно передавать xml, который я не знаю как обрабатывать
> в SQL Server.
Ну так немного изучить сей вопрос, и потом написать все 1-м (2-мя) запросам(и) если логики там не очень.
← →
картман © (2009-11-30 16:35) [51]
> Anatoly Podgoretsky © (30.11.09 16:24) [49]
спасибо, очень наглядный способ
> b z (30.11.09 16:34) [50]
согласен
← →
boriskb © (2009-11-30 19:07) [52]Прошу прощения за небольшой офтоп, но считаю нужным отметить поведение автора топика.
Все бы так спрашивали и реагировали на замечания.
картман © - речь не мальчика, но мужа :)
← →
Galera (2009-12-01 19:02) [53]
> boriskb © (30.11.09 19:07) [52]
Это точно.
Тут такое впечатление что каждый вопрошающий как призывник
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2010.02.07;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.006 c