![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать какого типа параметр нужен ? [D7, FB1.5]
Exciter © (2006-03-11 18:15:00)
QUERY.Close;
QUERY.SQL.Clear;
QUERY.SQL.Text := 'select * from Table where pole=:pole';
QUERY.Prepare;
После этого как узнать какого типа параметр нужен чтобы назначить DataType в Params ?
Desdechado (2006-03-12 15:27:00) [1]Prepare;
Params[0].Value := ....
Съест и не подавится. Подавится уже при выполнении.
Johnmen (2006-03-11 23:10:00) [2]Разница - огромна.
Ошибка будет. Но ещё ДО препарирования запроса. А не по ходу выполнения...
Desdechado (2006-03-11 22:27:00) [3]демагогия
какая разница, как это "2а" туда попадет - параметром или нет, главное - ошибка будет
Johnmen (2006-03-11 22:24:00) [4]Ну мы же про параметры перетираем...:)
Desdechado (2006-03-11 22:11:00) [5]я так не пишу, поэтому и не получал
а ты попробуй сделать
select * from tabl where integer_field = '2a'
чтобы не втулить туда "2а", нужно знать, что поле таки числовое
Johnmen (2006-03-11 21:53:00) [6]
> Desdechado © (11.03.06 21:28) [3]
Чревато, чревато... Ты их получал?
Вот именно!
Desdechado (2006-03-11 21:28:00) [7]> Никакого не надо назначать.
Вот только не указав тип, получим неявное преобразование при выполнении запроса, что чревато ошибками явными (нельзя преобразовать тип) или неявными (неверно преобразован тип).
Johnmen (2006-03-11 20:43:00) [8]
> После этого как узнать какого типа параметр нужен чтобы
> назначить DataType в Params ?
Никакого не надо назначать...
Desdechado (2006-03-11 18:35:00) [9]если запрос однотабличный и без функций (как в примере), то можно склюнуть из системных таблиц
но что это за запрос такой, где неизвестно что запрашиваешь?