VB не переваривает SUM

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Z_of_X
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 26.04.2006 (Ср) 17:05
Откуда: Домодедово

VB не переваривает SUM

Сообщение Z_of_X » 29.06.2006 (Чт) 12:08

Наткнулся и жутко обломался :(
Код:
Код: Выделить всё
Dim Rs As ADODB.Recordset
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Dim Q As String
Q = "SELECT SUM(`groupid`) as `sex` FROM `groups` ;"
Rs.Open Q, SQL, adOpenStatic  'и вот здесь мы вылетаем
Set Rs = Nothing

Выдает вот такую бяку:
--
Run-time Error '-2147217885 (80040e21)';
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.
--
Че ето ваще за ....
MySQL + VB6
как исправить?
Пасиба.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 29.06.2006 (Чт) 12:13

Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 29.06.2006 (Чт) 12:33

Нет, у него правильные апостофы, обратные.
Но скорее всего ODBC-драйвер глючит.
Убери апостофы совсем, должно работать.
Хотя лучше, конечно, выкинуть MySQL нафиг и поставить MSDE.
Lasciate ogni speranza, voi ch'entrate.

Z_of_X
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 26.04.2006 (Ср) 17:05
Откуда: Домодедово

Сообщение Z_of_X » 29.06.2006 (Чт) 13:08

Один фик, что с апострофами, что без них - ошибка :(
Мускул выкинуть не получица тоже :(

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 29.06.2006 (Чт) 13:35

Попробуй убрать альяс (sex) и точку с запятой в конце запроса.
Lasciate ogni speranza, voi ch'entrate.

Z_of_X
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 26.04.2006 (Ср) 17:05
Откуда: Домодедово

Сообщение Z_of_X » 29.06.2006 (Чт) 14:48

одна фигня, пробывал ужо...
Блин вешаться чтоли .... :D
:(

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

Сообщение Ennor » 29.06.2006 (Чт) 22:48

Та же самая строка запроса в MySQL Query Browser работает нормально?

Z_of_X
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 26.04.2006 (Ср) 17:05
Откуда: Домодедово

Сообщение Z_of_X » 29.06.2006 (Чт) 23:22

Query Browser'а нету, но в phpMyAdmin запрос выполняется.
VB причем одну и ту же фигню порит если SUM поставить, без SUM все пашет. :(((

Еще вот че откопал: В мануале по мускулу сказано, что ODBC-драйвер не справляется с BIGINT
поля складываю SMALLINT или INT

Может просто мускул пытается выдать результат суммирования в BIGINT по этому и орет ВБ?
Какие мысли?....

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 30.06.2006 (Пт) 3:33

Возможно и так...
Суммирование groupid - это сильно, в принципе... Попробуй (SUM(groupid) + 0.0) AS sex
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 30.06.2006 (Пт) 7:10

В groupid случайно текст не встречается?
[EDIT]: Простите, х@$&ю сморозил-с!
Последний раз редактировалось Nicky 30.06.2006 (Пт) 7:45, всего редактировалось 2 раз(а).

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 30.06.2006 (Пт) 7:30

GSerg писал(а):Попробуй (SUM(groupid) + 0.0) AS sex

Лучше SUM(groupid+0) AS sex.
Lasciate ogni speranza, voi ch'entrate.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 30.06.2006 (Пт) 8:43

Не лучше.
Надо в double скастовать.
Поэтому 0.0
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Z_of_X
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 26.04.2006 (Ср) 17:05
Откуда: Домодедово

Сообщение Z_of_X » 20.07.2006 (Чт) 8:20

В итоге суммирование сделал руками, а вот вчера обнаружил почему была такая подстава.
Итак ответ:
Если запросить сумму INT-подобных, то ошибка
а вот если сумму Double-записей, то все ОК!
Вот такие вот дела.

ПС: +0.0 не помогло.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 20.07.2006 (Чт) 11:07

а VB тут не причем :lol:
разбирайся с особенностями своего драйвера ODBC для MySQL
кстати, у этих драйверов косяков ой как много :wink:


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

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

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

    TopList