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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2010, 11:53   #1
Anuta884
 
Регистрация: 31.05.2010
Сообщений: 8
По умолчанию InterBase + DBGrid

Как осуществить добавление данных в базу через DBGrid?
Anuta884 вне форума Ответить с цитированием
Старый 04.06.2010, 12:27   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну становишся на последнюю строку, жмешь клавишу "вниз" - появляется новая строка. Вот в нее и пиши руками что добавить надобно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.06.2010, 12:53   #3
Anuta884
 
Регистрация: 31.05.2010
Сообщений: 8
По умолчанию

Что-то это не работает.

Я читала, что нужно добавление как то через sql запросы реализовывать, но не поняла как это делается.
Anuta884 вне форума Ответить с цитированием
Старый 04.06.2010, 13:12   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Для начала пиши свою задачу самым подробным образом.
Ибо твои действия мона делать многим способами
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.06.2010, 13:34   #5
Anuta884
 
Регистрация: 31.05.2010
Сообщений: 8
По умолчанию

Вообщем я пытаюсь написать клиент-серверное с помощью InterBase.
На форме у меня есть DBGrid. В него пользователи будут заносить данные.
По sql запросу я сделала чтобы из разных таблиц выводились разные поля.
Теперь нужно сделать добавлени. Вот его я не могу понять как делать.

Вот программа
Вложения
Тип файла: rar DIPrar.rar (381.0 Кб, 19 просмотров)
Anuta884 вне форума Ответить с цитированием
Старый 04.06.2010, 13:50   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

IB у меня нет, проверить не огу, но скажу как это обычно делается:
Создается отдельная форма - карточка. На форме поля, в которые пользователь вносит нужные данные (поля подписаны текстом). Внизу (обычно) помешается кнопка "внести", и тогда выполняется запрос INSERT INTO... в базу данных (для запроса можно на эту форму IBQuery кинуть).

Вот например как у меня
Вносятся поля в процедуру :
Код:
InsertNewRec4(LabelModel.Caption,EditObozn.Text,MemoNaim.Lines.Text,EditRazrab.Text,EditProveril.Text,
   EditTControl.Text,EditNControl.Text,EditUtverdil.Text,EditMaterial.Text,EditFormat.Text,EditPos.Text,
   EditZona.Text,EditMasstab.Text,mFile,'',
   StrToFloatDef(EditMassa.Text,0),StrToIntDef(EditList.Text,1),StrToIntDef(EditListov.Text,1),
   StrToIntDef(EditShtuk.Text,1),TipDoc);
Которая выглядит:
Код:
ado.SQL.Text:='insert into tab () values (:AModel,:AModelFrom,'+
    ':AAsm,:ANewObozn,:ANaim,:ARazrab,:AProveril,:ATControl,:AUtverdil'+
    ',:AList,:AListov,:AFormat,:AScale,:AMaterial,:AZona,:APos,:AFile'+
    ',:ATipDoc,:Akolvo,:AMassa,:APrim)';
    //******************************************
        with ado.Parameters do begin
          ParamByName('AModel').value:=AnsiUpperCase(ModelName);
          ParamByName('AModelFrom').value:=AnsiUpperCase(AModel);
          ParamByName('AAsm').value:=AnsiUpperCase(Obozn);
          ParamByName('ANewObozn').value:=AnsiUpperCase(AObozn);
          
          ParamByName('ANaim').value:=trim(ANaim);
          ParamByName('ARazrab').value:=ARazrab;
          ParamByName('AProveril').value:=AProv;
          ParamByName('ATControl').value:=ATControl;
          ParamByName('AUtverdil').value:=AUtverdil;
          ParamByName('AList').value:=Alist;
          ParamByName('AListov').value:=AListov;
          ParamByName('AFormat').value:=AFormat;
          ParamByName('AScale').value:=AMasstab;
          ParamByName('AMaterial').value:=AMaterial;
          ParamByName('AZona').value:=AZona;
          ParamByName('APos').value:=Apos;
          ParamByName('AFile').value:=AFile;
          ParamByName('ATipDoc').value:=ATypeDoc;
          ParamByName('Akolvo').value:=AKolvo;
          ParamByName('AMassa').value:=AMassa;
          ParamByName('APrim').value:=Aprim;
         end;
        Result:=ado.ExecSQL;
    //******************************************
  end;
Вот скрин карточки
Изображения
Тип файла: jpg Безымянный.JPG (36.4 Кб, 56 просмотров)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.06.2010, 13:56   #7
Anuta884
 
Регистрация: 31.05.2010
Сообщений: 8
По умолчанию

Спасибо большое, попробую.
Anuta884 вне форума Ответить с цитированием
Старый 04.06.2010, 17:47   #8
Kemperok
Пользователь
 
Регистрация: 04.06.2010
Сообщений: 25
По умолчанию

Хотелось бы узнать, вот те данные, которые у тебя отображаются в гриде, они у тебя находятся в (рабочей) таблице или же это просто запрос-выборка данных из разных таблиц?
Kemperok вне форума Ответить с цитированием
Старый 04.06.2010, 17:50   #9
Kemperok
Пользователь
 
Регистрация: 04.06.2010
Сообщений: 25
По умолчанию

если не сложно обрисуй структуру таблиц БД со всеми ключевыми полями и их связями...
Kemperok вне форума Ответить с цитированием
Старый 04.06.2010, 17:54   #10
Kemperok
Пользователь
 
Регистрация: 04.06.2010
Сообщений: 25
По умолчанию

Совет! Старайся не использовать гриды для вноса-редакрирования данных, лучше делать отдельные формы ввода данных, а гриды лишь для отображения данных и управления ими, т.е. из грида можно удалить данные именно всей строкой, или вызвать ту же форму ввода данных только не для ввода, а для редактирования.
Kemperok вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Interbase + Delphi - DBGRID SNUPY БД в Delphi 3 18.01.2010 17:31
InterBase Leo20 БД в Delphi 2 17.12.2009 19:26
Перемещение даннах из dbgrid в dbgrid Hobbit_88 БД в Delphi 7 10.06.2009 13:33
перенос данных из DBGrid в DBGrid KingSize БД в Delphi 17 24.04.2009 09:30
InterBase EdNovice БД в Delphi 1 11.05.2007 12:12