Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

Автоинкрементные поля - как с ними работать ч-з TSimpleDataSet   Найти похожие ветки 

 
Shaman   (2002-11-26 17:06) [0]

Как добавить запись в табличку, у которой есть автоинкрементное поле через TSimpleDataSet?

Например есть табличка


ID int IDENTITY (1, 1) NOT NULL,
Name VARCHAR(120)


Пробуем добавить в нее запись через T: TSimpleDataSet


T.DataSet.CommandType := ctQuery;
T.DataSet.CommandText := "SELECT * FROM MyTable";
T.Open;
T.Append;
T.FieldByName("ID").AsInteger := -1;
T.FieldByName("Name").AsString := "Запивайте водку пивом";
T.Post;
T.ApplyUpdates(-1);

возникает ошибка Unable to find record. No key specified

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


 
Johnmen   (2002-11-26 17:50) [1]

TSimpleDataSet не знаю, не встречал.
А указанная ошибка говорит о том, что невозможно однозначно идентифицировать запись. В виду отсутствия уникального ключа или уникального индекса. А один из них должен быть обязательно (в данном случае), если мы стремимся к грамотному построению БД...


 
Shaman   (2002-11-26 18:04) [2]

Суть дела понимаю, но надеюсь, что разработчики предусмотрели для этого какой-нибудь механизм. Есть куча свойств (AutoGenerateValue, ProviderFlag) которые, по идее должны эту проблему решать, но ничего не получается.


 
vlad_ri1   (2002-11-26 21:35) [3]

Я не работал с MSSQL, и возможно я не прав, но добавляя записи в таблицы Access через ADO поля с автоинкрементом я не трогаю, его значение увеличивается автоматически.


 
sniknik   (2002-11-26 21:42) [4]

vlad_ri1 (26.11.02 21:35)
так оно и в MSSQL.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
14-51952
Andryk
2002-11-21 17:55
2002.12.16
Общеделфийский рейтинг водки !!!


4-52005
Demn
2002-11-03 07:13
2002.12.16
Как вызвать системное окошко с пропертисами файла


1-51809
Дмитрий К.К.
2002-12-05 08:16
2002.12.16
Exception EOleSysError


1-51717
Alexei113
2002-12-05 20:53
2002.12.16
С чем едят это Hook...


6-51856
teebot
2002-10-21 12:14
2002.12.16
Контроль порта (блокировка, разблокировка и т.п.) !!!!!!!!!!!!!!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский