Долго выполняется запрос к MySQL

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Долго выполняется запрос к MySQL

Сообщение Q2W » 24.08.2005 (Ср) 9:14

Вобщем делаю запрос к MySQL:
Код: Выделить всё
    Set rs = conn.Execute("Запрос")
    While Not rs.EOF
        бла-бла-бла
        rs.MoveNext
    Wend

Выполняется сильно дольше, чем тот же запрос в SQLyog'е.
Напрягает.
Почему так? И как бороцца с этим?
Я знаю верный путь

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 24.08.2005 (Ср) 9:23

а патапучта прямым передором, покажи запрос
и напиши что надо сделать
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 24.08.2005 (Ср) 9:24

Наверное в SQL синтаксисе mySQL нет статсментса "Запрос"
гыгыгыгыгы))))))))))))))))))

Здесь глянь:
http://ln.com.ua/~openxs/articles/smart ... ns-ru.html
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 24.08.2005 (Ср) 9:30

lord0n писал(а):а патапучта прямым передором, покажи запрос
и напиши что надо сделать

Такая штука с абсолютно любым запросом.
Этот абсолютно любой запрос в vb выполняется долго, а в sqlYog (очень удобная прога для работы с sql запросами) тот же самый запрос выполняется гораздо быстрее.
Я знаю верный путь

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 24.08.2005 (Ср) 9:31

странно. у меня при выполнении команды
rs.open "запрос" - возникает ошибка
кто нить поможет? :cry:
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 26.08.2005 (Пт) 10:25

Q2W писал(а):Такая штука с абсолютно любым запросом.

Покажи код инициализации объектов Connection и Recordset на клиенте. Таки что-то мне подсказывает, что ты поставил слишком жирный курсор...

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 26.08.2005 (Пт) 12:27

Код: Выделить всё
    conn.Open "DRIVER={MySQL ODBC 3.51 Driver};Server=server;Port=3306;Option=3;Stmt=;Database=global;Uid=globalsoft;Pwd=mypass;"
Я знаю верный путь

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 26.08.2005 (Пт) 13:06

Q2W писал(а):Этот абсолютно любой запрос в vb выполняется долго


да неужели
а у меня почему за доли секунды выполняется :shock:

народ подскажите как сделать чтоб запрос выполнялся долго? :roll:
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 26.08.2005 (Пт) 13:20

Q2W писал(а):
Код: Выделить всё
    conn.Open "DRIVER={MySQL ODBC 3.51 Driver};Server=server;Port=3306;Option=3;Stmt=;Database=global;Uid=globalsoft;Pwd=mypass;"


Это вся настройка коннекшна? Маловато будет:
Код: Выделить всё
Set Conn = New ADODB.Connection
With Conn
  .CommandTimeout = 60
  .ConnectionString = "все что там у тебя"
  .ConnectionTimeout = 10
  .CursorLocation = adUseClient
  .IsolationLevel = adXactReadCommitted
  .Mode = adModeReadWrite Or adModeShareDenyNone
  .Open
End With

Далее, рекордсет тоже надо настраивать, вообще-то:
Код: Выделить всё
Set Rec = New ADODB.Recordset
With Rec
  Set .ActiveConnection = Conn
  .CursorLocation = adUseClient
  .CursorType = adOpenForwardOnly
  .LockType = adLockReadOnly
  .Source = "запрос"
  .Open
End With

Попробуй, скорее всего дело в типе курсора или еще каком-либо потенциально ресурсоемком свойстве...

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 26.08.2005 (Пт) 14:08

а не подскажите где мона прочитать обо всех настройках конекшена и рекордсета
на msdn'не был почемута выдает ошибку
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 26.08.2005 (Пт) 14:39

Ну не знаю, заходишь на http://msdn.microsoft.com, в разделе "Search MSDN For" вводишь, к примеру:
LockType property (ADO Recordset)

Не факт, что первая же ссылка будет вести куда нужно, но скорее всего на первой же странице она будет. Не знаю, что у тебя за ошибка, но у меня все работает, причем даже не из IE.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 26.08.2005 (Пт) 14:46

FireFox
не нравится ему чета, вот и открывать не хочет
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 26.08.2005 (Пт) 14:56

о нашел, мож кому надо
http://script-coding.info/ADO.html#ConnectionObject
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 26.08.2005 (Пт) 15:09

У меня под файерфоксом тоже работало. Сейчас, правда, проверить не могу - позавчера на последней своей машине снес этот недо-браузер и поставил классическую Мозиллу. Что и тебе советую.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 29.08.2005 (Пн) 11:54

пасиб за совет
а она(мозила) вкладки (tab) поддерживает как опера и фаерфокс?
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 29.08.2005 (Пн) 15:06

Да.
Моду создают модоки, а распространяют модозвоны.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 30.08.2005 (Вт) 9:46

фенькс
ща скачаю
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList