Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.16;
Скачать: CL | DM;

Вниз

Автоинкрементные поля - как с ними работать ч-з 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;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.007 c
4-52039
dkDimon
2002-11-02 00:44
2002.12.16
Момент завершения процесса


6-51873
SergeyS
2002-10-22 12:17
2002.12.16
Сниффер пакетов


3-51588
User_OKA
2002-11-27 13:00
2002.12.16
Запрос


1-51750
New Faction
2002-12-04 13:25
2002.12.16
MainMenu1 and Form3(unit3)


1-51746
Alexei113
2002-12-03 23:05
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский