мне нужно вывести в эдит значение получаемое sql запросом
как один из вариантов я пробывал написать вот так
void __fastcall TForm5::Button1Click(TObject *Sender)
{
Form6->Query1->Active=true;
Form5->Edit4->Text=StrToInt(Form6->DBGrid1->DataSource->DataSet->Fields->Fields[0]->Value);
Form6->Query1->Active=false;
}
{
Form6->Query1->Active=true;
Form5->Edit4->Text=StrToInt(Form6->DBGrid1->DataSource->DataSet->Fields->Fields[0]->Value);
Form6->Query1->Active=false;
}
но выдаёт ошибочку
could not convert variant of type (null) into type string
что за null,не пойму.в результате запроса 100 % одно поле выходит и оно не пустое !
4 апреля 2010 в 23:03
2Андрей Обманывать не хорошо. Мало того, что Ваш код не выведет такую ошибку. Так он еще и не скомпилируется
4 апреля 2010 в 22:04
а зачем с DBGrid'а брать? возьми данные с Query, например так:
Query1->FieldByName('имя поля')->AsInteger
что-то вроде такого, если правильно помню…
4 апреля 2010 в 22:04
Всё же проверь результат запроса, Или попробуй …->DataSet->FieldByName('ID').AsInteger
22 мая 2021 в 12:31
Привет) Стыдно до ужаса здесь писать(((((((( Я школьник, во втором семестре начали изучать паскаль, вообще никаких склонностей нет к этому(((((( Вы не могли бы мне "помочь" написать програмки, вот задачи: (если что, то пишите в личку), заранее благодарна!
1. Дано 50 вещественных чисел. Найти величину наибольшего из них.
2. Если уравнение ax2 + bx + c = 0 (a не равно 0) имеет вещественные корни, то логической переменной t присвоить значение true, а переменным x1 и x2 – сами корни, иначе же переменной t присвоить false, а значения переменных x1и x2 не менять.
3. Дано 50 вещественных чисел. Найти порядковый номер того из них, которое наиболее близко к какому-нибудь целому числу.
4. Дано натуральное k. Напечатать k-ю цифру последовательности 1234567891011121314…, в которой выписаны подряд все натуральные числа.
5.Даны целые числа x1, x2, …, x55. Вычислить величину
x1(x2+x3)(x4+x5+x6)(x7+x8+x9+x10)…(x46+x47+…+x55).