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

Вниз

ошибка поключения Ms Sql   Найти похожие ветки 

 
Axe   (2010-06-29 11:49) [0]

Ситуация в следующем:
1. Есть приложение для работы с базой данных в сети через  ADOConnection -> ADOQuery->DAtaSource
2. База данных - MSSQL.
Соеденение проходит успешно и выполнение первого SQL запроса проходит удачно, но через некоторое время если повторить запрос SQL то пишет ошибка соеденения! Вопрос как переподключить или что можно предпринять в данной ситуации?


 
Anatoly Podgoretsky ©   (2010-06-29 12:09) [1]

> Axe  (29.06.2010 11:49:00)  [0]

1. Ошибка в 17 строке
2. Используй TAdoDataset
3. Пригласи программиста
4. Пригласи телепата


 
12 ©   (2010-06-29 12:24) [2]

> выполнение первого SQL запроса проходит удачно

и вот тут
showmesage(ADOConnection.ConnectString) +
showmesage(ADOQuery.sql.text)


> если повторить запрос SQL то пишет ошибка соеденения!

и тут
что пишет +
showmesage(ADOConnection.ConnectString) +
showmesage(ADOQuery.sql.text)

в студию


 
Anatoly Podgoretsky ©   (2010-06-29 13:10) [3]

> 12  (29.06.2010 12:24:02)  [2]

А почему ты складываешь две процедуры, что ты этим сказать то хотел?


 
12 ©   (2010-06-29 13:28) [4]


> то ты этим сказать то хотел?

просил привести

ADOConnection.ConnectString
ADOQuery.sql.text
и что пишет


 
Anatoly Podgoretsky ©   (2010-06-29 13:51) [5]

Это ты так партизана раскалываешь :-)


 
Axe   (2010-06-29 16:21) [6]

Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=lin2db;Data Source=127.0.0.1;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AXE;Use Encryption for Data=False;Tag with column collation when possible=FalseSELECT  uid, account,last_login,last_logout  FROM user_account WHERE account like "goldeneye%"
Выкладываю ADOConnection.ConnectString+
ADOQuery.sql.text


 
12 ©   (2010-06-29 16:28) [7]

а теперь тоже самое и текст ошибки, когда эта ошибка возникает


 
Axe   (2010-06-29 18:02) [8]

Текст тотже выдает а ошибку то ошибка сеть, или ошибка подключения


 
MsGuns ©   (2010-06-29 19:49) [9]

Соединение, конечно же, в дизайне :)


 
Axe   (2010-06-29 20:39) [10]

Поподробней? Что то описал непонятно?


 
MsGuns ©   (2010-06-29 22:24) [11]

В Object Inspector у TADOConnection стоит Active=true ?


 
Axe   (2010-06-29 22:52) [12]

Да  я при открытие формы активирую соединение, первый же запрос нормально проходит это потом как будто соединение закрывается
Если делать при новом запросе пересоединение  т.е TADOConnection.close и TADOConnection.open то нормально запрос проходит, как то можно обнаружить что потерянно соединение?


 
Axe   (2010-06-29 22:53) [13]

Да  я при открытие формы активирую соединение, первый же запрос нормально проходит это потом как будто соединение закрывается
Если делать при новом запросе пересоединение  т.е TADOConnection.close и TADOConnection.open то нормально запрос проходит, как то можно обнаружить что потерянно соединение?


 
Германн ©   (2010-06-30 03:14) [14]


> Axe   (29.06.10 18:02) [8]
>
> Текст тотже выдает а ошибку то ошибка сеть, или ошибка подключения
>

Ну когда же вы, троешники, научитесь приводить в сабже или в ответах текст сообщения об ошибке без перевода на ...
:(


 
12 ©   (2010-06-30 08:51) [15]

так не пойдет
кинь на форму еще одно мемо и пиши вместо ADOQuery.open
OpenQ(ADOQuery)

procedure OpenQ(var AQ: tadoquery);
begin
 memo.lines.add(AQ.sql.text);
 memo.lines.add(AQ.connection.connectstring);

 try
   AQ.Open;
 except
   on E:Exception do
   begin
     memo.lines.add(E.ClassName);
     memo.lines.add(E.Message);
     // Raise; // по желанию
   end;
 end;
end;

и показывай текст из мемо

ps
в коде возможны опечатки - писал сразу сюда


 
12 ©   (2010-06-30 09:00) [16]

> как то можно обнаружить что потерянно соединение?

у TADOConnection заполнены Showmessge("оп па"); на
(Before-зачеркнуто :) )Disconnect
AfterDisconnect


 
sniknik ©   (2010-06-30 09:20) [17]

> у TADOConnection заполнены Showmessge("оп па"); на
> (Before-зачеркнуто :) )Disconnect
> AfterDisconnect
это не поможет, т.к. метод ничего не знает о проблемах сети до того как не проверит ее действием.
а это сработает если где нибудь в той же программе будет - ADOConnection.Active:= false;

+ здесь можно не проверять ошибки сети, т.к. > Data Source=127.0.0.1;, здесь только ошибки в программе (или настройка сервера mssql - разрывать соединение после исполнения запроса... если такая есть конечно. что там администраторы по этому поводу скажут?).


 
Axe   (2010-06-30 10:02) [18]

Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=lin2db;Data Source=127.0.0.1;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AXE;Use Encryption for Data=False;Tag with column collation when possible=False
SELECT  uid, account,last_login,last_logout  FROM user_account WHERE account  like "goldeneye%"

Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=lin2db;Data Source=127.0.0.1;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AXE;Use Encryption for Data=False;Tag with column collation when possible=False
EOleException
Ошибка подключения


 
Axe   (2010-06-30 10:05) [19]

Ребят сразу оговорюсь, IP не локальный, это просто я поменял так как просили сервер не светит


 
sniknik ©   (2010-06-30 10:13) [20]

а отсутствие запроса в случае с ошибкой это тоже "оговорка"?

> Это ты так партизана раскалываешь :-)
это не партизан, это провокатор...


 
Axe   (2010-06-30 10:20) [21]

Незнаю вызов такой же а запрос не выводит


 
12 ©   (2010-06-30 11:50) [22]

во втором случае нет текста запроса
ищи где текст может менятся

напиши procedurу по смене текста запроса и делай не Q.SQL.text:=
(и не Q.SQL.Add())
А только через эту процедуру, и сигналь как только текст станет = пусто



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

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

Наверх





Память: 0.5 MB
Время: 0.108 c
15-1341400402
Inovet
2012-07-04 15:13
2013.03.22
Нашли бозон Хигса (?)


15-1350246602
Юрий
2012-10-15 00:30
2013.03.22
С днем рождения ! 15 октября 2012 понедельник


15-1330351343
Тенерман
2012-02-27 18:02
2013.03.22
Данные -> TShiftState.


2-1330533371
lcd1232
2012-02-29 20:36
2013.03.22
Работа с post/get запросами


15-1336034354
ZeroDivide
2012-05-03 12:39
2013.03.22
Delphi перестала работать комбинация Ctrl+Shift+стрелки,





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский