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

Вниз

Access - как измененить значение поля?   Найти похожие ветки 

 
Максим   (2004-07-30 01:44) [0]

Подскажите, пожалуйста.
Прямо в DBGrid редактирую таблицу базы (Ms Access). Добавляю новую строку, устанавливаю значения полей, сохраняю, все работает. А изменить значения уже существующих строк не могу. Возникает  “Запись не может быть обновлена, так как с момента последнего чтения значения некоторых полей могли быть изменены”. Если редактировать таблицу не непосредственно в DBGrid, а так:
ADOConnection.BeginTrans;
ADOTable.Insert;
ADOTable.Fields[0]:= 1;

ADOTable.Post,

все работает, но при измении значение поля существующей записи  
ADOConnection.BeginTrans;
ADOTable.Edit;
ADOTable.Fields[0]:= 1;
ADOTable.Post, метод Post генерирует ту же ошибку.
(Access 97, ADOConnection.ConnectionString:=  "Provider=Microsoft.Jet.OLEDB.4.0;
Persist Security Info=False; User ID=Admin;Data Source=db.mdb". Не пойму где допускаю ошибку.


 
ЮЮ ©   (2004-07-30 03:59) [1]

В таблице нет первичного ключа, а в записи до редактирования есть NULL-евые поля, поэтому запрос на модификацию и удаление не может найти эту запись в тавлице и считает, что она была уже кем-то изменена


 
OhYoMaFa!   (2004-07-30 14:41) [2]

Вот несколько статей на эту тему:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=408
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=413
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=420
http://www.delphikingdom.com/mastering/ado.htm


 
Leran2003   (2004-07-30 19:59) [3]

CursorLocation=clUseServer и будет тебе счастье :))


 
starcomputer   (2004-07-31 09:38) [4]

Есть или нет ключ по моему безразлично!
Я уже долгое время пытаюсь решить этот вопрос и убедился, что пока не выполнишь close - open новые записи невозможно редактировать!
Так что если у кого-нибудь получиться сообщите плиз!!!

А ссылки на Королевство конечно не плохие, автор статей Shabal, мы с ним обсуждали этот вопрос и на форуме, и в частной переписке, в конце концов он со мной согласился :)


 
sniknik ©   (2004-07-31 10:48) [5]

> Есть или нет ключ по моему безразлично!
да ну?
тогда попробуй SQL запросом удалить 3ю(/любую) позицию в таблице из совершенно одинаковых записей, одинаковых по всем полям.  
а ведь в случае SQL сервером, общение идет именно на языке SQL.
(только без всяких обходных путей типа завести новую таблицу и перекачать туда все -1 запись, это уже признак интелектуального решения, чего нельзя требовать от компонент)
можеш также попробовать изменить 1 запись в ряду одинаковых, только именно одну. если даш решение тогда пожалуй все с тобой согласятся, ключь не нужен.
(аксес не совсем хороший пример конечно, у него есть режим локального доступа, лучше бы было взять "чистый" сервер у которого нет скрытых ключей(/уникальных идентификаторов), но ладно пусть будет аксесс)

> и в частной переписке, в конце концов он со мной согласился :)
наверняка только потому чтобы ты отстал, обьяснять основы упорствуюшим дилетантам часто очень утомительно.



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

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

Наверх





Память: 0.46 MB
Время: 0.101 c
14-1091295618
Guest
2004-07-31 21:40
2004.08.22
Добрый вечер.Подскажите как найти кол-во строк в списке


6-1088076333
студентМАИ
2004-06-24 15:25
2004.08.22
служба доступа к файлам и принтерам


1-1091560738
g-l-u-k
2004-08-03 23:18
2004.08.22
Как определить каким пакером сжат файл или язык программирования?


14-1090874948
Викусик
2004-07-27 00:49
2004.08.22
Ночной дозор


11-1077964306
nsvi
2004-02-28 13:31
2004.08.22
Проблемы с KOLWebBrowser





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