Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.02.07;
Скачать: CL | DM;

Вниз

Большие таблицы   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.013 c
3-1233828628
ganda
2009-02-05 13:10
2010.02.07
Поднять мусор из базы данных FireBird 1/5


2-1260513762
Б
2009-12-11 09:42
2010.02.07
Array char -> String


2-1260516490
Aleks
2009-12-11 10:28
2010.02.07
Странности календаря в Дельфи


2-1260268394
d@nger
2009-12-08 13:33
2010.02.07
Как получить результат SQL запроса (Firebird)


2-1260690327
faiwer
2009-12-13 10:45
2010.02.07
TIniFile && Unicode