![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Autoincrement поле в Paradox [D5, Paradox]
Philosoph © (2004-07-06 17:29:00)Есть таблица в Paradox'е. У неё Autoincrement поле. Как с помощью процедуры TDataSet.AppendRecord записать в добавляемую строку новое значение? Или это невозможно?
Reindeer Moss Eater (2004-07-06 17:55:00) [1]Философ, а от физической таблицы абстрагироваться не может.
Забудь нафик о физической структуре файла таблицы.
Тебе про список TFields у Датасета толкуют уже полчаса.
Соловьев (2004-07-06 17:54:00) [2]
> бросьте её на deepgrey@bigmir.net
ушла :)
Philosoph (2004-07-06 17:53:00) [3]
> Соловьев © (06.07.04 17:50) [24]
>
> > Database Desktop Help Topic
>
> выбрось его. localsql.hlp - рулез
Не обижайтесь, но создайте таблицу Парадокса и ключевым полем в конце и бросьте её на deepgrey@bigmir.net . Боюсь у Вас это не выйдет.
Соловьев (2004-07-06 17:52:00) [4]
> Так откуда ж им взяться если процеДУРА не срабатывает и
> даёт ошибку?
1. автоинкремент может стоять где ему заблагороруссудится
2. удали нафиг эти поля.
и пробуй Appendrecord
Reindeer Moss Eater (2004-07-06 17:52:00) [5]Ну это никак не рациональное решение.
Чем конкретноне рациональное?
Philosoph (2004-07-06 17:51:00) [6]
> Идея никаким боком к таблице парадокса не имеет отношения.
> Так же как и AppendRecord относится к датасету, а не к физической
> таблице
Ага, а свойство DataBase Name у TTable и настройка в BDE этого алиаса тоже не важна? Или менять местами поля у ДатаСета? Ну это никак не рациональное решение.
Соловьев (2004-07-06 17:50:00) [7]
> Database Desktop Help Topic
выбрось его. localsql.hlp - рулез
Philosoph (2004-07-06 17:48:00) [8]
> Соловьев © (06.07.04 17:46) [21]
> Table1.AppendRecord ([null,null,edit1.text, edit2.text])
> и еще
> дабл клик по табле, есть поля?
?????????????????????????
Поля-то есть, а вот записей в них... Так откуда ж им взяться если процеДУРА не срабатывает и даёт ошибку?
Reindeer Moss Eater (2004-07-06 17:46:00) [9]Плохая идея. В парадоксе ключевое поле должно стоять первым. А оно у меня ключевое.
Идея никаким боком к таблице парадокса не имеет отношения.
Так же как и AppendRecord относится к датасету, а не к физической таблице
Соловьев (2004-07-06 17:46:00) [10]Table1.AppendRecord ([null,null,edit1.text, edit2.text])
и еще
дабл клик по табле, есть поля?
Philosoph (2004-07-06 17:46:00) [11]to Соловьев
Database Desktop Help Topic
Соловьев (2004-07-06 17:44:00) [12]
> В парадоксе ключевое поле должно стоять первым.
откуда такая информация?
Philosoph (2004-07-06 17:44:00) [13]
> Соловьев © (06.07.04 17:43) [16]
>
> > Table1.AppendRecord ([null, edit1.text, edit2.text])
>
> Table1.AppendRecord ([edit1.text, edit2.text])
???????
Поля всего четыре.
Соловьев (2004-07-06 17:43:00) [14]
> Table1.AppendRecord ([null, edit1.text, edit2.text])
Table1.AppendRecord ([edit1.text, edit2.text])
Philosoph (2004-07-06 17:43:00) [15]
> Reindeer Moss Eater © (06.07.04 17:41) [14]
> Сделай поле четвертым в списке полей.
> Указывай три элемента при AppendRecord
Плохая идея. В парадоксе ключевое поле должно стоять первым. А оно у меня ключевое.
Philosoph (2004-07-06 17:41:00) [16]to Соловьев
> Philosoph (06.07.04 17:36) [8]
> Table1.AppendRecord ([null, edit1.text, edit2.text])
> Поля всего четыре.
> Autoincrement - первое.
Reindeer Moss Eater (2004-07-06 17:41:00) [17]Сделай поле четвертым в списке полей.
Указывай три элемента при AppendRecord
Philosoph (2004-07-06 17:40:00) [18]to Курдль
Похоже, так и сделаю. Хотя жаль. Всё равно спасибо.
Курдль (2004-07-06 17:38:00) [19]
> Philosoph (06.07.04 17:33) [4]
Да задвинь ты эту идею. В дальнейшем она почти тебе не пригодится.
Пиши последовательно:
DataSet.Append;
DataSet.FieldByName('FIELD1_NAME').AsInteger := 1;
DataSet.FieldByName('FIELD2_NAME').AsFloat := 2.2;
DataSet.FieldByName('FIELD3_NAME').AsString := '3';
...
DataSet.FieldByName('FIELDN_NAME').AsInteger := N;
DataSet.Post;
И это позволит избежать многих ошибок.
Соловьев (2004-07-06 17:38:00) [20]ну убери его:)