Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

из-за чего ADOCommand1.Execute выдает 1 запись, когда их много


xyz ©   (2009-07-31 12:02:00) 

Запрос можно поставить любой:
select * from [Таблица]
можно более сложный, но возвращается всегда 1 запись, когда их там несколько на самом деле.
ADOCommand1.Execute.Fields.Count=1 всегда. Почему?


xyz   (2009-07-31 13:48:00) [1]


> а то ерунду какую-то исполняешь...

то есть то, что я пытаюсь сделать в реальном приложении сделать не понадобится?


Anatoly Podgoretsky   (2009-07-31 13:47:00) [2]

> xyz  (31.07.2009 13:35:17)  [17]

Дейта, Граббера и книгу/справку по конкретной СУБД - вот этих будет достаточно.


Palladin   (2009-07-31 13:36:00) [3]

да хотя бы справку по используемым инструментам... а то ерунду какую-то исполняешь...


xyz   (2009-07-31 13:35:00) [4]

говорите, что нужно почитать. крайне желательно с примерами


Anatoly Podgoretsky   (2009-07-31 13:27:00) [5]


> Может почитать чего для начала?

Это уже предлагали.


xyz   (2009-07-31 13:27:00) [6]

ну интересует просто i и все :)


clickmaker   (2009-07-31 13:25:00) [7]

> Я заранее не знаю, что там записано. Просто нужно вытащить
> i-ю запись

а откуда ты это конкретное i получил?


xyz   (2009-07-31 13:22:00) [8]

locate и lookup это методы, которые ищут конкретную запись? Тогда это не совсем то. Я заранее не знаю, что там записано. Просто нужно вытащить i-ю запись (и то интересует ее значение только по одному полю). Там строка.


Anatoly Podgoretsky   (2009-07-31 13:16:00) [9]

> xyz  (31.07.2009 12:43:06)  [6]

Что у тебя содержит Value, что ты хочешь обращаться по индексу?


Плохиш   (2009-07-31 12:59:00) [10]


> xyz   (31.07.09 12:53) [8]

> А вообще нужно просто из нулевого (там все равно в таблице
> только 1 поле)  поля i-ю запись вытащить в обычный string

Может почитать чего для начала?


Palladin   (2009-07-31 12:56:00) [11]

вот мне интересно, в Fields ты индекс 0 ради чего поставил? и почему ты пытаешься обратится к variant'ному значению как к массиву, и с каких щей тогда ты удивляешься ошибке. ошибка правильная на 100%


clickmaker   (2009-07-31 12:55:00) [12]

> вообще нужно просто из нулевого (там все равно в таблице
> только 1 поле)  поля i-ю запись вытащить в обычный string

перечитай еще раз [7] внимательно


xyz   (2009-07-31 12:53:00) [13]


> если нужно значение конкретной записи, нужно на нее встать.

так у меня переменная i и так на тот момент уже была присвоена нужному номеру записи.
А вообще нужно просто из нулевого (там все равно в таблице только 1 поле)  поля i-ю запись вытащить в обычный string


clickmaker   (2009-07-31 12:45:00) [14]

что значит Value[i]?
Value хранит значение текущей записи, но которой в данный момент стоит dataset
если нужно значение конкретной записи, нужно на нее встать.
см. Locate, Lookup


xyz   (2009-07-31 12:43:00) [15]


> а тебе не рано еще работать с _recordset?

Мне НУЖНО с ним работать :)
Не подскажете, как вот такой код поправить, чтобы исключение не выдавал?
var s:string;
s:=adodataset1.Fields[0].Value[i].asstring;

Выдает "Invalid argument". Сами данные в ADODataSet вроде нормально записались, recordcount по крайней мере правильный был.


Anatoly Podgoretsky   (2009-07-31 12:12:00) [16]

а тебе не рано еще работать с _recordset?


Anatoly Podgoretsky   (2009-07-31 12:08:00) [17]

> xyz  (31.07.2009 12:02:00)  [0]

А почему ты так решил?
И почему ты решил, что Fields имеет хоть какое то отношение к записям


xyz   (2009-07-31 12:08:00) [18]

Понял.


Плохиш   (2009-07-31 12:04:00) [19]


> можно более сложный, но возвращается всегда 1 запись


> ADOCommand1.Execute.Fields.Count=1 всегда.

Какая связь между этими предложениями?


clickmaker   (2009-07-31 12:03:00) [20]

> ADOCommand1.Execute.Fields.Count

это не количество записей


Наверх

Титульная страница Поиск, карта сайта Написать письмо