Вниз
Скачать: CL | DM;

Access+ADO   Найти похожие ветки 

 
aht ©   (2006-10-09 12:42) [0]

как грамотно вытащить длину текстового поля из сабжа?


 
ЮЮ ©   (2006-10-09 12:53) [1]

TStringField.Size
Length(TStringField.asString)

lLength(subj) = Length("Access+ADO") = 10


 
Elen ©   (2006-10-09 12:54) [2]


> aht

ADOQuery1.Fields[<номер_поля>].DataSize - ?
или имеется ввиду длину строки в поле?


 
ЮЮ ©   (2006-10-09 12:57) [3]

For string fields, DataSize is one more than the value of the Size property. The characters in the string can take up to Size bytes, and the extra byte is the null character at the end.


 
aht ©   (2006-10-09 13:04) [4]


> TStringField.Size
> Length(TStringField.asString)
>
> lLength(subj) = Length("Access+ADO") = 10

смешно :-)
вообще-то правильно так:
ADOQuery1.Fields[<номер_поля>].Size или так:
ADOQuery1.FieldByName[<номер_поля>].Size
но не хочется так делать, дабы не вытаскивать данные (придумывать ограничения и пр.). Вот если бы вытащить хотябы одну строчку из базы, например, как-то так:
ADOQuery1.SQL.Add("select single F1 from DB_TABLE") Но, на сколько я понимаю, в дельфях такого нет ("select single")?


 
Elen ©   (2006-10-09 13:05) [5]


> ЮЮ

и ?


 
Elen ©   (2006-10-09 13:08) [6]


>  Вот если бы вытащить хотябы одну строчку из базы, например,
>  как-то так:
> ADOQuery1.SQL.Add("select single F1 from DB_TABLE") Но,
> на сколько я понимаю, в дельфях такого нет ("select single")?
>

Во-первых ADO должно обращаться к провайдеру, а если там это есть то это сработает.
Во-вторых выташиш ты одну строчку а она покажет размер строки, который может быть меньше чем ограничение поля. Так ведь?


 
aht ©   (2006-10-09 13:25) [7]

select single не работает, только что проверил :-)

> Во-вторых выташиш ты одну строчку а она покажет размер строки,
>  который может быть меньше чем ограничение поля. Так ведь?
>

вытащу я одну строчку и .Size покажет мне размер текстового поля в БД, которое не может быть меньше значения этого поля.
тогда, небольшая корректировочка вопроса: как вытащить одну запись из БД, скажем первую (если делать простой select без ограничений в where,то вытаскиваются все данные => тормоза в будущем)?


 
Плохиш ©   (2006-10-09 13:29) [8]

select * from blablabla where 1=0


 
aht ©   (2006-10-09 13:34) [9]


> select * from blablabla where 1=0

прикольно, а как интересно такое условие интерпретируется JET"ом...


 
aht ©   (2006-10-09 13:39) [10]

Плохиш, пасибо вроде работает :-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.031 c
2-1159520154
Василий Блаженный
2006-09-29 12:55
2006.10.22
BDS2006 vs Delphi 7


15-1159393229
Yegorchic
2006-09-28 01:40
2006.10.22
Power Point и звук в презентации


2-1159730643
Изучающий_
2006-10-01 23:24
2006.10.22
CloseHandle(hLib) для Kernel32.dll


2-1160030756
TrainerOfDolphins
2006-10-05 10:45
2006.10.22
Значение по умолчанию на стороне клиента


3-1156846974
Дырчик
2006-08-29 14:22
2006.10.22
Как запаковать таблицу




   Наверх