Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите! Проблемы с ADO OLE DB, или с чем то таким... 
:(
    Опции темы
Fenrir
Дата 16.5.2006, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 16.5.2006

Репутация: нет
Всего: нет



Народ, помогите пожалуйста. Пишу значит клиент к Базе данных и застопорился на динамическом запросе... Проблема вот в чем: нужно сделать запрос к таблице так что бы на основании введеных в форму значений select выбирал только нужное. Создал первый параметр EMail, и прописал его в SQL (... where MailFrom = :EMail...), Работает все хорошо, ну вроде бы... 
Как только добавляю второй параметр DateFrom, заполняю свойства вылазиет ошибка - "project ... raised exception class EOleException with message 'Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности проверьте значения всех состояний OLE DB. Работа не выполнена'. Process stoped." 
Если еще и дописать в SQL (...and where SendDate = :DateFrom ...) вылазиет еще и другая ошибка - "project ... raised exception class EOleException with message '[Microsoft][ODBC SQL Server Driver] Дополнительная возможность не реализованна'." Вот... И что теперь делать ваабще незнаю... 
Может кто сталкивался с подобным знаете решение? Или может есть какая нибуть альтернатива? Пожалуйста помогите!!
SQL 2000, Win XP, Builder 6, связь через ADO, и руки вроде откуда надо растут... 
PM MAIL   Вверх
Fenrir
Дата 16.5.2006, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 16.5.2006

Репутация: нет
Всего: нет



Я тут еще немного поэксперементировал и кажется понял как оно есть...  Проблему вызывает "SendDate >= :DateFrom". Без этого все вроде работает, а с этой частью при активации ADOQuery выскакивает ошибка "[Microsoft][ODBC SQL Server Driver] Дополнительная возможность не реализованна". SendDate это поле в моей таблице (тип: datetime, размер 8), ну а DateFrom это имя задумываемого параметра. 
По идее будет ещё и "SendDate <= :DateTill", это соответственно мне нужно что бы выбирать данные за определенный период. Ну вроде бы должно быть яснее... У кого какие идеи? 
PM MAIL   Вверх
Oberon83
Дата 17.5.2006, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 158
Регистрация: 6.5.2005
Где: Республика Чуваши я

Репутация: 1
Всего: 1



По ворме записи запроса: MailFrom = :EMail, можно предположить, что ты используешь в запросе параметры. Возможно из-за того что эти параметры у тебя неопределены и возникает ошибка. Сделай проще - создай функцию, которая у тебя будет строить запрос. Т.е. я например делаю обработчики визуальных компонентов (Edit, Memo, ComboBox), которые генерируют необходимый текст запроса:
Например для Edit'a:

Код

//int& delim - Наличие оператора WHERE в запросе (если 0 - дописывается WHERE, если 1 дописывается AND)
//TEdit* edit - это просто Edit
//char* text - поле таблицы с которым связан Edit
AnsiString obrabotka::gen_where_edit(int& delim,TEdit* edit,char* text){
AnsiString output;
if(edit->Text != ""){
if(delim == 1) output = " and ";
        else{
        output = " WHERE ";
        delim = 1;
        }
output += AnsiString(text) + " = '" + edit->Text + "'";
}
return output;
}

И так для основных компонентов, которые у тебя есть на форме.

Так вот для генерации поискового запроса:

Код

AnsiString sql;
int delimiter;//Указывет на то, что оператор SQL запроса WHERE присутствует

sql = "SELECT * FROM table";
sql += gen_where_edit(int& delim,TEdit* edit,char* text);
//и т.д.

 
--------------------
OpenArea.ru
PM MAIL ICQ   Вверх
Estuark
Дата 19.2.2023, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 19.2.2023

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1186 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.