Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Table1.insert......Table1.post Error

3 views
Skip to first unread message

Denis Sharipov

unread,
Jun 9, 2007, 7:40:04 AM6/9/07
to
copy in = RU.DELPHI.DB (2:5010/53.40)
=================================================

Приветствую тебя All

имеется проблема с сабжом, а именно: при

tb_jour_23.Active:=true;
tb_jour_23.Open;

str:='Средний балл: '+srbl_lbl.Caption+'; кол.-во правил.ответов студента:
'+prot_lbl.Caption+'; кол.неправ.ответов студента: '+osh_lbl.Caption+';
прод.-сть чтения: '+ch_lbl.Caption+'; прод.-сть ответов на вопросы:
'+ot_lbl.Caption+'.';

tb_jour_23.insertRecord([testarr[1],'"Зрелый
возраст"',tpts_lbl.Caption,str,
true,strtodate(dtts_lbl.Caption),strtotime(nchts_lbl.Caption),prts_lbl.Caption,
true,ed_fam_21.Text,ed_gr_21.Text]);

if ed_fam_21.text<>'' then
tb_jour_23.FieldByName('Family').Value:=ed_fam_21.text;//else
if ed_gr_21.text<>'' then
tb_jour_23.FieldByName('Id_groupim').Value:=ed_gr_21.text;} {else

tb_jour_23.Post;
tb_jour_23.Close;

если запись происходит в чистую таблицу, то ошибок нет, при последующих новых
записях (повтор кода)
,имхо, на команде сохранения Post выдаётся ошибка (компилятора):
{заголовок сообщения} Debugger Exception Notification
{тело сообщения} Project Unita.exe raised exception class EDBEngineError with
message 'Key violation.'.
Process stopped. Use Step or Run to continue.

ошибка программы - "Key violation"

в чём моя ошибка?


Пиши All, пока.
... Дpyжбы наpодов надежный applet

Sergey Bychkov

unread,
Jun 11, 2007, 5:27:05 AM6/11/07
to
Привет, Denis!


... В ответ на письмо от 09 июня 2007 от Denis Sharipov к All сообщаем:

DS> EDBEngineError with message 'Key violation.'.

Очевидно, повторяется значение ключевого поля, которое должно быть уникальным.

DS> в чём моя ошибка?

Был случай, что даже пришлось писать свою версию "AppendRecord" по мотивам
борляндского кода.

До встречи, Denis!
Sergey (serge_bychkov[zzz]mail333.com) ICQ# 21014758

Nikolai Shevtsov

unread,
Jun 11, 2007, 10:46:53 PM6/11/07
to
Hi, Denis !

Суббота Июнь 09 2007 16:40, Denis Sharipov писал All:


DS> имеется проблема с сабжом, а именно: при

DS> tb_jour_23.Active:=true;
DS> tb_jour_23.Open;

DS> str:='Средний балл: '+srbl_lbl.Caption+'; кол.-во правил.ответов
DS> студента: '+prot_lbl.Caption+'; кол.неправ.ответов студента:
DS> '+osh_lbl.Caption+'; прод.-сть чтения: '+ch_lbl.Caption+'; прод.-сть
DS> ответов на вопросы:
DS> '+ot_lbl.Caption+'.';

DS> tb_jour_23.insertRecord([testarr[1],'"Зрелый
DS> возраст"',tpts_lbl.Caption,str,
DS> true,strtodate(dtts_lbl.Caption),strtotime(nchts_lbl.Caption),prts_lbl
DS> .Caption,
DS> true,ed_fam_21.Text,ed_gr_21.Text]);

DS> if ed_fam_21.text<>'' then
DS> tb_jour_23.FieldByName('Family').Value:=ed_fam_21.text;//else
DS> if ed_gr_21.text<>'' then
DS> tb_jour_23.FieldByName('Id_groupim').Value:=ed_gr_21.text;} {else

DS> tb_jour_23.Post;
DS> tb_jour_23.Close;

DS> если запись происходит в чистую таблицу, то ошибок нет, при
DS> последующих новых записях (повтор кода) ,имхо, на команде сохранения
DS> Post выдаётся ошибка (компилятора): {заголовок сообщения} Debugger
DS> Exception Notification {тело сообщения} Project Unita.exe raised
DS> exception class EDBEngineError with message 'Key violation.'. Process
DS> stopped. Use Step or Run to continue.

DS> ошибка программы - "Key violation"

DS> в чём моя ошибка?

tb_jour_23.Open;
tb_jour_23.Insert;
tb_jour_23.Append;
------------------
tb_jour_23.Post;
tb_jour_23.Next;

Лучшие пожелания, Nikolai Shevtsov.

Glebov Boris

unread,
Jun 15, 2007, 11:18:52 AM6/15/07
to
Hello Nikolai!

07:46, 12 Июня 2007. Ты взглянул(а) на Denis Sharipov и сказал(а):

NS> tb_jour_23.Open;
NS> tb_jour_23.Insert;
NS> tb_jour_23.Append;
NS> ------------------
NS> tb_jour_23.Post;
NS> tb_jour_23.Next;

Можно поинтересоваться в чем смысл методом Insert вставить новую запись, а
потом вызвать метод Append который по сути делает тоже самое, и это точно не
решит проблемы автора письма.

Good bye Nikolai. [Posted by FBI pack]

Nikolai Shevtsov

unread,
Jun 17, 2007, 10:45:50 PM6/17/07
to
Hi, Glebov !

Пятница Июнь 15 2007 20:18, Glebov Boris писал Nikolai Shevtsov:

GB> 07:46, 12 Июня 2007. Ты взглянул(а) на Denis Sharipov и сказал(а):

NS>> tb_jour_23.Open;
NS>> tb_jour_23.Insert;
NS>> tb_jour_23.Append;

NS>> -+--+--+--+--+--+-
NS>> tb_jour_23.Post;
NS>> tb_jour_23.Next;

GB> Можно поинтересоваться в чем смысл методом Insert вставить новую
GB> запись, а потом вызвать метод Append который по сути делает тоже
GB> самое, и это точно не решит проблемы автора письма.

не внимательно прочитал вопрос, сразу не обратил внимания на ошибку ключа.
по поводу insert and append у меня были как то глюки программе
когда надо было сначала вводить новые данные в пустую таблицу, а потом
добавлять.
Проблема решилась таким способом.

Лучшие пожелания, Nikolai Shevtsov.

Denis Sharipov

unread,
Jun 18, 2007, 3:48:31 PM6/18/07
to
15 Июня 2007 20:18, _Glebov Boris_ писал /Nikolai Shevtsov/, а я нагло влез:

Приветствую тебя Glebov


NS>> tb_jour_23.Open;
NS>> tb_jour_23.Insert;
NS>> tb_jour_23.Append;
NS>> ------------------
NS>> tb_jour_23.Post;
NS>> tb_jour_23.Next;

GB> Можно поинтересоваться в чем смысл методом Insert вставить новую
GB> запись, а потом вызвать метод Append который по сути делает тоже
GB> самое, и это точно не решит проблемы автора письма.

Благодарю всех отозвавшихся ена мои вопросы, работа с прогой закончена.....а
проблема действительно была в том, что значения должны быть уникальными для
ключевого поля или нужно просто убрать ключ....

Пиши Glebov, пока.
... Винда не пpиходит одна. (c) Microsoft Team

0 new messages