Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2012.01.29;
Скачать: [xml.tar.bz2];

Вниз

Запрос работает из Management Studio. Из программы нет.   Найти похожие ветки 

 
12 ©   (2010-04-09 09:11) [0]

Ошибка: EOleException Время ожидания истекло

Пишу:

..тут делается запрос, вычисляются и подставляются параметры..
.. и делаем контроль
 memo1.Lines.Add(qMain.SQL.Text);
 for j := 0 to qMain.Parameters.Count - 1  do
   memo1.Lines.Add(qMain.Parameters[j].Name + "="+
                           String(qMain.Parameters[j].Value));

  qMain.Open; // тут Ошибка Время ожидания истекло
exit;
..  
Затем из мемо копирую в SQL Server Management Studio, заменяю параметры, запускаю - 3-4 секунды, результаты есть.

Чего можно сделать, куда копать?


 
turbouser ©   (2010-04-09 11:08) [1]


> 12 ©   (09.04.10 09:11)  

увеличить qMain.CommandTimeout


 
12 ©   (2010-04-09 11:15) [2]

пробовал, 20 минут жду - ничего
из мемо копирую в SQL Server Management Studio, заменяю параметры, запускаю - 3-4 секунды


 
Виталий Панасенко(дом)   (2010-04-09 11:30) [3]

ошибка в запросе видимо. или отбирается немерянное  кол-во данных и все фетчится.. в отличии от менеджера


 
Медвежонок Пятачок ©   (2010-04-09 11:49) [4]

Чего можно сделать, куда копать?

Для начала проверить, что коннекшен запроса в проекте совпадает с коннекшеном студии.

Возможно он банально смотрит не туда (на несуществующий сервер)


 
12 ©   (2010-04-09 11:51) [5]


> ошибка в запросе видимо. или отбирается немерянное  кол-
> во данных и все фетчится.. в отличии от менеджера


Всегда все отбираю
и там, и там
несколько тысяч (2-3, максимум 4) строк получается


 
Anatoly Podgoretsky ©   (2010-04-09 12:01) [6]

> turbouser  (09.04.2010 11:08:01)  [1]

Да у него разные запросы в Дельфи и в SSMS а может еще и строка подключения.


 
12 ©   (2010-04-09 12:03) [7]

все, пятница что ли..вообще не понимаю, чем эти запросы различаются?
Первого не дождусь, второй 2 секунды..

№1
------
use ccc

select
count (*)

from
 dbo.request r
 join dbo.object o on r.id_object = o.id_object
 join dbo.filials_sct f on f.id_sct = r.id_sct
 join dbo.sct sct on sct.id_sct = r.id_sct
 join dbo.oper_log ol on ol.ring_id = r.ring_id
where
 r.id_sct = 26
 and start_time between "07-04-2010" and "08-04-2010"
 and r.id_object in( 183, 184, 189)
 and len(r.aon) = 10
 and left(r.aon, 1) <> 9
 and r.ring_id_cisco is null
 and r.ring_id is not null
 and f.id_sct is not null
---------------------------
№2
declare @ID int, @CODE int, @FDATE datetime, @SDATE datetime

set @ID = 26
--set @CODE = 183
set @FDATE = "07-04-2010"
set @SDATE = "08-04-2010"

select distinct
Cast("" as char(12)) +      --Лицевой счет
Cast(r.aon as char(10)) +   --Телефон А
Cast(Convert(char(10), r.start_time, 112) as char(10)) + --Дата услуги (ггггммдд)
Cast("" as char(10)) +      --Код услуги
Cast("" as char(15)) +      --Сумма
Cast("1" as char(15)) +     --Количество услуг
Cast("М09" as char(10)) +   --Номер пачки
Cast( ROW_NUMBER()OVER(order by r.aon) as char(10)) +   --Номер документа. ROW_NUMBER с версии 2005!
Cast("" as char(60))      --Дополнительная информация
from
 dbo.request r
 join dbo.object o on r.id_object = o.id_object
 join dbo.filials_sct f on f.id_sct = r.id_sct
 join dbo.sct sct on sct.id_sct = r.id_sct
 join dbo.oper_log ol on ol.ring_id = r.ring_id
where
 r.id_sct = @ID
 and start_time between @FDATE and @SDATE
 and r.id_object in (183, 189, 184, 42) -- = @CODE
 and len(r.aon) = 10
 and left(r.aon, 1) <> 9
 and r.ring_id_cisco is null
 and r.ring_id is not null
 and f.id_sct is not null


 
12 ©   (2010-04-09 12:07) [8]


> Anatoly Podgoretsky ©   (09.04.10 12:01) [6]

да где же разные то?
Говорю же, перед запуском дернул текст запроса и все его параметры в мемо, из мемо в Management Studio, далее заменяю параметры :ID на 26
ID=26 - это тоже в мемо у меня.

Ничего не беру стороннего ни откуда  


> Медвежонок Пятачок ©   (09.04.10 11:49) [4]

посмотрел, туда.


 
Медвежонок Пятачок ©   (2010-04-09 12:10) [9]

надо не смотреть, а проверять.
например профайлером.


 
12 ©   (2010-04-09 12:54) [10]

Свелось к такому. Один 2 секунды, второй не дождусь. Что за???

Не дождусь
use ccc
select count(*)
from
 dbo.request r
 join dbo.object o on r.id_object = o.id_object
 join dbo.filials_sct f on f.id_sct = r.id_sct
 join dbo.sct sct on sct.id_sct = r.id_sct
 join dbo.oper_log ol on ol.ring_id = r.ring_id
where
 r.id_sct = 26
 and start_time between "07-04-2010" and "08-04-2010"
 and r.id_object in (183, 189, 184) -- на одно условие меньше!
 and len(r.aon) = 10
 and left(r.aon, 1) <> 9
 and r.ring_id_cisco is null
 and r.ring_id is not null
 and f.id_sct is not null

2 секунды!!
use ccc
select count(*)
from
 dbo.request r
 join dbo.object o on r.id_object = o.id_object
 join dbo.filials_sct f on f.id_sct = r.id_sct
 join dbo.sct sct on sct.id_sct = r.id_sct
 join dbo.oper_log ol on ol.ring_id = r.ring_id
where
 r.id_sct = 26
 and start_time between "07-04-2010" and "08-04-2010"
 and r.id_object in (183, 189, 184, 42) -- ААА КАК ЖЕ ТАК!!!!!!
 and len(r.aon) = 10
 and left(r.aon, 1) <> 9
 and r.ring_id_cisco is null
 and r.ring_id is not null
 and f.id_sct is not null


 
Anatoly Podgoretsky ©   (2010-04-09 13:03) [11]

Я не слепой и вижу

for j := 0 to qMain.Parameters.Count - 1  do

И наверно где то в Дельфи в запросе есть :ID

В приведеных запросах этого нет. Поэтому проверка из SSMS не адекватно тому, что написано в Дельфи. Кроме того тебе еще намекали на ConnetiongString, попробуй выполнить из Дельфи простой запрос SELECT * FROM tbl, вместо старого запроса, строго в том же компоненте, в котором оно не работает.


 
Anatoly Podgoretsky ©   (2010-04-09 13:04) [12]

> Медвежонок Пятачок  (09.04.2010 12:10:09)  [9]

Запрос мы видимо не увидим.


 
Медвежонок Пятачок ©   (2010-04-09 13:33) [13]

интересно, на кой леший в делфийском запросе использовать use?
сразу-то нельзя сделать нужную базу текущей?

ну или на худой конец
from  ссс.dbo.request r .....


 
12 ©   (2010-04-09 13:53) [14]


> Запрос мы видимо не увидим.

почему так(т.е.declare всякие) - пока тестирую

declare @ID int, @CODE int, @FDATE datetime, @SDATE datetime

set @ID = :IdSCT                 --26
set @CODE = :IdObject       --183
set @FDATE = :FirstDATE   --"29-03-2010"
set @SDATE = :SecondDATE   --"30-03-2010"

select distinct
Cast("" as char(12)) +      --Лицевой счет
Cast(r.aon as char(10)) +   --Телефон А
Cast(Convert(char(10), r.start_time, 112) as char(10)) + --Дата услуги (ггггммдд)
Cast("" as char(10)) +      --Код услуги
Cast("" as char(15)) +      --Сумма
Cast("1" as char(15)) +     --Количество услуг
Cast("М09" as char(10)) +   --Номер пачки
Cast( ROW_NUMBER()OVER(order by r.aon) as char(10)) +   --Номер документа. ROW_NUMBER с версии 2005!
Cast("" as char(60))      --Дополнительная информация
as StringForWrite
from
 dbo.request r
 join dbo.object o on r.id_object = o.id_object
 join dbo.filials_sct f on f.id_sct = r.id_sct
 join dbo.sct sct on sct.id_sct = r.id_sct
 join dbo.oper_log ol on ol.ring_id = r.ring_id
where
 r.id_sct = @ID
 and start_time between @FDATE and @SDATE
 and r.id_object = @CODE
 and len(r.aon) = 10
 and left(r.aon, 1) <> 9
 and r.ring_id_cisco is null
 and r.ring_id is not null
 and f.id_sct is not null




> Медвежонок Пятачок ©   (09.04.10 13:33) [13]
>
> интересно, на кой леший в делфийском запросе использовать
> use?

это уже в аналайзере
я просто к чему - что-то с БД не так, мне кажется.


 
Медвежонок Пятачок ©   (2010-04-09 14:03) [15]

это уже в аналайзере

Ну так у тебя тогда оба запроса в аналайзере (оба с use).

А при чем здесь делфи?


 
12 ©   (2010-04-09 14:16) [16]

скучный ты... :)
это я потом понял.


 
12 ©   (2010-04-09 15:04) [17]

Всем спасибо за поддержку и обсуждение моей проблемы,

кому интересно - настоящая проблема в БД, индекс порушился.


 
Anatoly Podgoretsky ©   (2010-04-09 15:39) [18]

> 12  (09.04.2010 15:04:17)  [17]

Да так, что в SSMS работает, а в Дельфи нет.
Расскажи нам еще сказок.


 
12 ©   (2010-04-09 16:06) [19]

в делфи я не тот период брал, не по тем кодам - дымал какая разница, за какой день..


 
Медвежонок Пятачок ©   (2010-04-09 16:13) [20]

а мы думали:
а какая разница, что в делфи ты не получаешь результатов.
в студии же они есть, значит все ок и проблемы нет


 
12 ©   (2010-04-09 16:19) [21]

извините, ввел в заблуждение



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2012.01.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.004 c
1-1282812225
Vidog
2010-08-26 12:43
2012.01.29
Упаковка файлов и архивация


15-1318236331
Бездомный
2011-10-10 12:45
2012.01.29
Как пропустить при дебаге модуль system (или другие)?


2-1319204159
Alez
2011-10-21 17:35
2012.01.29
Не правильно работает код после перехода на Delphi XE2


15-1317835426
Empleado
2011-10-05 21:23
2012.01.29
Project Management Software


15-1317933002
Юрий
2011-10-07 00:30
2012.01.29
С днем рождения ! 7 октября 2011 пятница





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский