Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
ВнизAutoincrement поле в Paradox Найти похожие ветки
← →
Philosoph (2004-07-06 17:29) [0]Есть таблица в Paradox"е. У неё Autoincrement поле. Как с помощью процедуры TDataSet.AppendRecord записать в добавляемую строку новое значение? Или это невозможно?
← →
Соловьев © (2004-07-06 17:31) [1]
> Autoincrement
Auto - само
increment - увеличивается
> записать...новое значение?
не находите "Парадокса"? :)
← →
bushmen © (2004-07-06 17:31) [2]А что, разве DataSet1.Append не работает?
← →
Reindeer Moss Eater © (2004-07-06 17:31) [3]Возможно.
Но не надо указывать само поле в списке для AppendRecord
← →
Philosoph (2004-07-06 17:33) [4]to Reindeer Moss Eater
Пробую - не выходит. Всё равно процедура пытаеться туда писать значение, которое должно записываться в следующее поле.
← →
bushmen © (2004-07-06 17:34) [5]> Philosoph (06.07.04 17:33) [4]
Покажи, как пытаешься! Потужься еще - вдруг поможет ! :)
← →
Reindeer Moss Eater © (2004-07-06 17:35) [6]Пробую - не выходит.
Неправильно пробуешь.
Всё равно процедура пытаеться туда писать значение
Какая интересная процедура. Сама узнает имя этого поля. Наверное соединившись с космическим разумом. Не иначе.
← →
Соловьев © (2004-07-06 17:35) [7]YourDataSet.AppendRecord([Null,Value1, Value2]);
← →
Philosoph (2004-07-06 17:36) [8]
Table1.AppendRecord ([null, edit1.text, edit2.text])
Поля всего четыре.
Autoincrement - первое.
← →
Соловьев © (2004-07-06 17:36) [9]где NULL - твое инкрементное поле
← →
Philosoph (2004-07-06 17:37) [10]to Соловьев
Не-а. Ругается на невозможность присвоить Autoincrement"у NULL
← →
Соловьев © (2004-07-06 17:38) [11]ну убери его:)
← →
Курдль © (2004-07-06 17:38) [12]
> 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;
И это позволит избежать многих ошибок.
← →
Philosoph (2004-07-06 17:40) [13]to Курдль
Похоже, так и сделаю. Хотя жаль. Всё равно спасибо.
← →
Reindeer Moss Eater © (2004-07-06 17:41) [14]Сделай поле четвертым в списке полей.
Указывай три элемента при AppendRecord
← →
Philosoph (2004-07-06 17:41) [15]to Соловьев
> Philosoph (06.07.04 17:36) [8]
> Table1.AppendRecord ([null, edit1.text, edit2.text])
> Поля всего четыре.
> Autoincrement - первое.
← →
Соловьев © (2004-07-06 17:43) [16]
> Table1.AppendRecord ([null, edit1.text, edit2.text])
Table1.AppendRecord ([edit1.text, edit2.text])
← →
Philosoph (2004-07-06 17:43) [17]
> Reindeer Moss Eater © (06.07.04 17:41) [14]
> Сделай поле четвертым в списке полей.
> Указывай три элемента при AppendRecord
Плохая идея. В парадоксе ключевое поле должно стоять первым. А оно у меня ключевое.
← →
Philosoph (2004-07-06 17:44) [18]
> Соловьев © (06.07.04 17:43) [16]
>
> > Table1.AppendRecord ([null, edit1.text, edit2.text])
>
> Table1.AppendRecord ([edit1.text, edit2.text])
???????
Поля всего четыре.
← →
Соловьев © (2004-07-06 17:44) [19]
> В парадоксе ключевое поле должно стоять первым.
откуда такая информация?
← →
Philosoph (2004-07-06 17:46) [20]to Соловьев
Database Desktop Help Topic
← →
Соловьев © (2004-07-06 17:46) [21]Table1.AppendRecord ([null,null,edit1.text, edit2.text])
и еще
дабл клик по табле, есть поля?
← →
Reindeer Moss Eater © (2004-07-06 17:46) [22]Плохая идея. В парадоксе ключевое поле должно стоять первым. А оно у меня ключевое.
Идея никаким боком к таблице парадокса не имеет отношения.
Так же как и AppendRecord относится к датасету, а не к физической таблице
← →
Philosoph (2004-07-06 17:48) [23]
> Соловьев © (06.07.04 17:46) [21]
> Table1.AppendRecord ([null,null,edit1.text, edit2.text])
> и еще
> дабл клик по табле, есть поля?
?????????????????????????
Поля-то есть, а вот записей в них... Так откуда ж им взяться если процеДУРА не срабатывает и даёт ошибку?
← →
Соловьев © (2004-07-06 17:50) [24]
> Database Desktop Help Topic
выбрось его. localsql.hlp - рулез
← →
Philosoph (2004-07-06 17:51) [25]
> Идея никаким боком к таблице парадокса не имеет отношения.
> Так же как и AppendRecord относится к датасету, а не к физической
> таблице
Ага, а свойство DataBase Name у TTable и настройка в BDE этого алиаса тоже не важна? Или менять местами поля у ДатаСета? Ну это никак не рациональное решение.
← →
Reindeer Moss Eater © (2004-07-06 17:52) [26]Ну это никак не рациональное решение.
Чем конкретно не рациональное?
← →
Соловьев © (2004-07-06 17:52) [27]
> Так откуда ж им взяться если процеДУРА не срабатывает и
> даёт ошибку?
1. автоинкремент может стоять где ему заблагороруссудится
2. удали нафиг эти поля.
и пробуй Appendrecord
← →
Philosoph (2004-07-06 17:53) [28]
> Соловьев © (06.07.04 17:50) [24]
>
> > Database Desktop Help Topic
>
> выбрось его. localsql.hlp - рулез
Не обижайтесь, но создайте таблицу Парадокса и ключевым полем в конце и бросьте её на deepgrey@bigmir.net . Боюсь у Вас это не выйдет.
← →
Соловьев © (2004-07-06 17:54) [29]
> бросьте её на deepgrey@bigmir.net
ушла :)
← →
Reindeer Moss Eater © (2004-07-06 17:55) [30]Философ, а от физической таблицы абстрагироваться не может.
Забудь нафик о физической структуре файла таблицы.
Тебе про список TFields у Датасета толкуют уже полчаса.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.031 c