Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

СНОВА INSERT [D7, XP]


Страницы:   1 2

Elafor ©   (2010-01-21 09:44:00) 

Добрый день. Я знаю что уже много тем было по запросам, но чего то толи до меня не доходит, то ли я чего то не правильно делаю...
(Эт все в Access 2003)Необходимо из имеющийся таблицы DBGrid1(Список товаров(Название товара, цена за ед товара, количество товара)) пренести выбранные записи в таблицу DBGrid2(Заказ(Название товара, цена за ед товара, количество товара, Заказываемое количество, цена)).

Я так понял просто перенести данные как из одного stringgrida в другой не получится(если такой способ имеется, то желательно узнать его)

Пробовал через запрос приведенный в одной из тем -
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(' INSERT INTO Table1 (Field1) ');
ADOQuery1.SQL.Add(' VALUES ('+Edit1.Text+')');
ADOQuery1.Open;
BookName.Refresh;
DBGrid1.Repaint;
//MsgBox(Edit1.Text);
end;

Ничего не получилось

Вопросы:
1. Возможно ли как то осуществить перенос данных из одного DBGrida в другой?
2. Как написать SQL запрос INSERT(Перенос записей(не всех) из таблицы Список продуктов в таблицу Заказ) для нескольких полей.
Сразу благодарю всех кто поможет.


Elafor   (2010-01-22 21:07:00) [1]

Спсиб за советы, я ее сделал!!! УРА УРА УРА!


Anatoly Podgoretsky   (2010-01-22 16:55:00) [2]

> Elafor  (22.01.2010 16:38:36)  [36]

Раз ты можешь переместиться, то что мешает ее запомнить?


Anatoly Podgoretsky   (2010-01-22 16:54:00) [3]

Нет.
Текущую определять не надо она текущая


Elafor   (2010-01-22 16:38:00) [4]

Еще вопрос:
Чтобы переместить курсор на последнюю запись надо использовать     DataModule.ADOTable.Last, а есть какая нибудь процедура чтоб определять является ли выбранная запись последней?

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


Elafor   (2010-01-22 15:31:00) [5]

Ладно, с переносом данных из одной таблицы в другую разобрался..вроде.


> KilkennyCat ©   (22.01.10 12:04) [31]
> я бы не стал такие глобальные вещи вешать на шоу формы.
> Оно далеко не однократно может быть вызвано. Повесь это
> там, где делаешь вызов формы.

Спасиб, сразу не подумал, теперь исправил.


KilkennyCat   (2010-01-22 13:19:00) [6]

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


Anatoly Podgoretsky   (2010-01-22 13:07:00) [7]


> я бы не стал такие глобальные вещи вешать на шоу формы.
> Оно далеко не однократно может быть вызвано. Повесь это
> там, где делаешь вызов формы.

Нечего страшного, укаолько не удаляй больше не удались. Просто будут лишнии вызовы


Anatoly Podgoretsky   (2010-01-22 12:06:00) [8]

> Elafor  (22.01.2010 10:41:28)  [28]

> В конце концов это раздел - Начинающие

А ты как к ним относишься?


KilkennyCat   (2010-01-22 12:04:00) [9]

я бы не стал такие глобальные вещи вешать на шоу формы. Оно далеко не однократно может быть вызвано. Повесь это там, где делаешь вызов формы.


Elafor   (2010-01-22 10:45:00) [10]

*Çàêàç - Заказ


Elafor   (2010-01-22 10:44:00) [11]

Еще у меня при отображение формы в которой я выбираю записи которые необходимо переносить, я удаляю все записи из таблицы заказ, вот так -

procedure TForm3.FormShow(Sender: TObject);
begin
 DataModule5.ADOCommand1.CommandText:='DELETE* FROM Çàêàç;';
   DataModule5.ADOCommand1.Execute;
end;


Elafor   (2010-01-22 10:41:00) [12]


> Дмитрий Белькевич

Уточнение - по программированию с использованием данных из БД не читали

В конце концов это раздел - Начинающие

Я написал такой код -

   
DataModule5.ADOCommand1.CommandText:='INSERT INTO Заказ([Название продукта], [Цена за ед товара], [Количество на складе], [Код завхоза]) VALUES(:NameT, :ByeT, :ValT, :Zavhoz);';
   DataModule5.ADOCommand1.CommandType:=cmdText;
   DataModule5.ADOCommand1.Parameters.ParamByName('NameT').Value:= DBEdit1.Text;
   DataModule5.ADOCommand1.Parameters.ParamByName('ValT').Value:= DBEdit2.Text;
   DataModule5.ADOCommand1.Parameters.ParamByName('ByeT').Value:= DBEdit3.Text;
   DataModule5.ADOCommand1.Parameters.ParamByName('Zavhoz').Value:= DBEdit4.Text;
   DataModule5.ADOCommand1.Execute;


В DBEdit'ах хранятся значения из первой таблицы, Заказ - вторая таблица, в которую я переношу данные из первой

Пишет ошибку - class EOleException - Несоответствие типов данных в выражении условия отбора.

но я все поля в БД([Название продукта], [Цена за ед товара], [Количество на складе], [Код завхоза]) проверил - типы одинаковые, что это может быть?


KilkennyCat   (2010-01-22 10:35:00) [13]


> будет учить как портянки мотать.

Зачем учить, можно на форуме спросить.


Anatoly Podgoretsky   (2010-01-22 08:54:00) [14]

То Военное Учебное Заведение, будет учить как портянки мотать.


Дмитрий Белькевич   (2010-01-21 23:59:00) [15]

>(Эт все в Access 2003)Необходимо из имеющийся таблицы DBGrid1(Список товаров(Название товара, цена за ед товара, количество товара)) пренести выбранные записи в таблицу DBGrid2(Заказ(Название товара, цена за ед товара, количество товара, Заказываемое количество, цена)).

Разбиваем задачу на части.
1. Найти выбранные в гриде записи.
2. Добавить их в нужную таблицу.
3. Обновить второй грид, перечитав данные из таблицы.

>в том то и дело что лекции не читали по программированию

Не читали? Или не слушал? Если первое - то ВУЗ - г-но, если второе - то сам себе виноват.


Плохиш   (2010-01-21 14:47:00) [16]

Видно не твоё это, не твоё.


Elafor   (2010-01-21 11:42:00) [17]

в том то и дело что лекции не читали по программированию, читали по работе с Rational Rose(что я уже сделал)на счет программы - подразумевается что меня обучили основам нескольких языков программирования, а как ты будеш писать дело твоё


Anatoly Podgoretsky   (2010-01-21 11:40:00) [18]

Институт более дельное, чем форум.


Elafor   (2010-01-21 11:39:00) [19]

Да я же не спорю что я много чего не умею, но где же мне в такой ситуации этому научится - не чего дельного кроме этого форума не нашел...


Sergey13   (2010-01-21 11:37:00) [20]

> [16] Elafor   (21.01.10 11:28)
> а по предмету Основы проектирования информационных систем
> очень муторно делать систему, если ты даже не догадываешся
> как это в действительности работает:(

Насколько я помню институт - сначала читается курс лекций с семинарами, а ПОТОМ дается на выполнение курсовой проект. И если ты "даже не догадываешся как это в действительности работает", то значит ты этих лекций не слушал.

> [17] Elafor   (21.01.10 11:30)
> и еще как должна называться прога в которой на 80% кнопок
> должны быть заглушки?
Значит то, на чем ты встал входит в другие 20%. Не меню же тебе дали разрабатывать.

Впрочем это уже лирика.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо