Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

SQL запрос и формат строки

2.1K
14 ноября 2007 года
FreeWay
142 / / 03.05.2007
Всем привет. Необходимо выбрать данные из таблицы, дата которых больше некоторой фмксированной даты.

QueryOper->SQL->Text=("Select * From Oper where Date > #"+QuerySvod->FieldByName("Res")->Value+"# ");

//Res содержит дату 13.12.2007
так как формат даты не правильный запрос неотробатывает,
подскажите как можно привести 13.12.2007 к 13/12/2007
2.1K
14 ноября 2007 года
FreeWay
142 / / 03.05.2007
QueryOper->SQL->Text =
("Select * From Oper where Date > #" +
StringReplace(QuerySvod->FieldByName("Res")->Value, ".", "/", TReplaceFlags() << rfReplaceAll) +
"# ");


все работает, темма закрыта
1
16 ноября 2007 года
kot_
7.3K / / 20.01.2000
Цитата: FreeWay
QueryOper->SQL->Text =
("Select * From Oper where Date > #" +
StringReplace(QuerySvod->FieldByName("Res")->Value, ".", "/", TReplaceFlags() << rfReplaceAll) +
"# ");


все работает, темма закрыта


Многократно тему поднимали и многократно уже объясняли - для того, что бы не было проблем - используйте параметры. Для передачи - дат, чисел, строк - ИСПОЛЬЗУЙТЕ ПАРАМЕТРЫ! Не нужно делать все через ж... изобретая замены и прочее - ИСПОЛЬЗУЙТЕ ПАРАМЕТРЫ!

11
16 ноября 2007 года
oxotnik333
2.9K / / 03.08.2007
Цитата: kot_
ИСПОЛЬЗУЙТЕ ПАРАМЕТРЫ!



к стати, на счет параметров...
как правильно организовать в ран-тайме параметр типа ftBlob для TADOQuery или TADOStoredProc ? (СУБД MSSQL 2005)
ADOQuery1->SQL->Text = "insert into Obj (ObjBody) values (:@Body)";
ADOQuery1->Parameters->CreateParameter("@Body", ftVarBytes, pdInput, 2147483647, NULL); // ОШИБКА: приложение использует для текущей операции значение неверного типа
ADOQuery1->Parameters->ParamByName("@Body")->LoadFromFile(OpenDialog1->FileName, ftBlob); ADOQuery1->ExecSQL();

1
16 ноября 2007 года
kot_
7.3K / / 20.01.2000
Цитата: oxotnik333
к стати, на счет параметров...
как правильно организовать в ран-тайме параметр типа ftBlob для TADOQuery или TADOStoredProc ? (СУБД MSSQL 2005)
ADOQuery1->SQL->Text = "insert into Obj (ObjBody) values (:@Body)";
ADOQuery1->Parameters->CreateParameter("@Body", ftVarBytes, pdInput, 2147483647, NULL); // ОШИБКА: приложение использует для текущей операции значение неверного типа
ADOQuery1->Parameters->ParamByName("@Body")->LoadFromFile(OpenDialog1->FileName, ftBlob); ADOQuery1->ExecSQL();


Используйте форматирование кода. В вашем коде нет необходимости вызывать CreateParameter - параметр уже добавлен.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог