Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.038 c
14-1089634928
Piter
2004-07-12 16:22
2004.08.01
Master Of Magic


3-1089193006
wild_arg
2004-07-07 13:36
2004.08.01
IS_MEMBER vs. WindowsNT User


3-1089192594
Fast
2004-07-07 13:29
2004.08.01
Explorer like ComboBox


3-1089193831
mikola
2004-07-07 13:50
2004.08.01
Randomaize


3-1089360692
denis24
2004-07-09 12:11
2004.08.01
table1.filter





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский