Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2011, 12:02   #1
lpud
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 23
Сообщение Delphi добавление записи в Stringgrid

у меня такая проблема.
Код:
procedure TForm2.Button1Click(Sender: TObject); (это кнопка заполнения)
begin
ZAPSTR(Sender);
end;

procedure TForm2.Button2Click(Sender: TObject); (кнопка добавления)
begin

DM.IBQuery1.Close;
DM.IBQuery1.SQL.Clear;
DM.IBQuery1.SQL.Text:='INSERT INTO ok (zak, tip, dl, sh, nf, mat, st) VALUES ('+QuotedStr(edit1.Text)+','+QuotedStr(edit2.Text) +','+QuotedStr(edit3.Text) +','+QuotedStr(edit4.Text) +','+QuotedStr(edit5.Text) +','+QuotedStr(edit6.Text) +','+QuotedStr(edit7.Text) +')';
DM.IBQuery1.execsql;

procedure TForm2.Button1Click(Sender: TObject);
begin
ZAPSTR(Sender);
end;
При заполнении и добавлении в stringgrid е ничего не добавляет а после перезапуска программы там уже заполненные. Как сделать чтобы сразу показывал заполение. И какую процедуру написать чтобы удалить из stringrid/ Заранее благодарен

Последний раз редактировалось Stilet; 30.05.2011 в 14:41.
lpud вне форума Ответить с цитированием
Старый 30.05.2011, 12:23   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

как всегда самое интересное и не показали.
Цитата:
При заполнении и добавлении в stringgrid е ничего не добавляет
где код начального заполнения stringGrid?
где код добавления в stringGrid?
после добавления надо СНОВА заполнить .
Т.К. у вас путаница
заполняете StringGrid
добавляете в базу (НЕ StringGrid)
а StringGrid про базу НИЧЕГО не знает. про нее знает только "ZAPSTR"
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 30.05.2011 в 12:28.
evg_m вне форума Ответить с цитированием
Старый 30.05.2011, 13:22   #3
lpud
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 23
Радость спасибо

вот весть код.
Вложения
Тип файла: txt source.txt (4.1 Кб, 133 просмотров)
lpud вне форума Ответить с цитированием
Старый 30.05.2011, 13:38   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

после добавления надо СНОВА заполнить .
Т.К. у вас путаница
заполняете StringGrid
добавляете в базу (НЕ StringGrid)
а StringGrid про базу НИЧЕГО не знает. про нее знает только "ZAPSTR"
ZAPSTR знает про таблицу НО не знает что данные в базе изменились (стало быть их надо читать и заполнять заново).

Код:
procedure TForm2.Button2Click(Sender: TObject);
begin

DM.IBQuery1.Close;
DM.IBQuery1.SQL.Clear;
DM.IBQuery1.SQL.Text:='INSERT INTO ok (zak, tip, dl, sh, nf, mat, st) VALUES ('+QuotedStr(edit1.Text)+','+QuotedStr(ComboBox1.text) +','+QuotedStr(edit3.Text) +','+QuotedStr(edit4.Text) +','+QuotedStr(ComboBox2.text) +','+QuotedStr(ComboBox3.text) +','+QuotedStr(edit4.Text) +')';
DM.IBQuery1.execsql;

/// после добавления надо СНОВА прочитать и заполнить .
DM.IBTable1.Close;//закрываем чтобы СНОВА прочитать
ZAPSTR(Sender);  // надо СНОВА заполнить

end;
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 30.05.2011, 14:03   #5
lpud
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 23
Радость

Огромное спасибо заработал))а как удалить выделенный запись стринггрда.
lpud вне форума Ответить с цитированием
Старый 30.05.2011, 14:28   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

Цитата:
Огромное спасибо заработал))а как удалить выделенный запись стринггрда.
Удалять надо не запись StringGrid а СООТВЕТСТВУЮЩУЮ ей запись БД(таблицы).
DM.ISquery1.SQL.Text:='delete from ok where ???????';
и перечитывать данные аналогично добавлению.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 30.05.2011, 15:10   #7
lpud
Пользователь
 
Регистрация: 23.05.2011
Сообщений: 23
Печаль

при удалении выдет ошибку
project project1.exe raised exespition class EIBinterbaseerror whit message Dynamic SQL error
SQL error code = -104
token unknow -line 1, char 7
form'.
вот код который я написал
DM.IBQuery1.Close;
DM.IBQuery1.SQL.Clear;
DM.IBQuery1.SQL.Text:='Delete form ok where (zak, tip, dl, sh, nf, mat, st) VALUES ('+QuotedStr(edit1.Text)+','+Quoted Str(ComboBox1.text) +','+QuotedStr(edit3.Text) +','+QuotedStr(edit4.Text) +','+QuotedStr(ComboBox2.text) +','+QuotedStr(ComboBox3.text) +','+QuotedStr(edit4.Text) +')';
DM.IBQuery1.execsql;
{ibtransaction1.commit;
ibtransaction1.active:=true;}
ZAPSTR(Sender);

в чем ошибка?
lpud вне форума Ответить с цитированием
Старый 30.05.2011, 16:10   #8
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

Цитата:
в чем ошибка?
в незнании синтаксиса SQL.
http://programmersforum.ru/showthread.php?t=1589
Мартин Грубер.
Код:
delete from ok where zak=.... and tp=.... and ....
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
добавление в StringGrid Delphi mishel7916 Помощь студентам 2 13.12.2010 16:38
Delphi: ошибка записи в StringGrid Sianessa Помощь студентам 3 20.11.2010 01:57
добавление записей в StringGrid в Delphi TaYgA Помощь студентам 0 23.01.2010 20:33
Запрос на добавление записи в Delphi disaer Помощь студентам 5 09.11.2009 12:07
Добавление записи в файл (Delphi) VadEr Помощь студентам 2 15.05.2009 10:30