Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294

Окошко с сообщением при добавлении записи в БД. C++ Builder 6

08.04.2013, 22:17. Показов 2668. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня проблема.

Вот этот код вставил:
C++
1
2
3
4
5
6
7
8
if (Form1->ADOTable1->RecordCount==0)
{
ShowMessage("Запишите данные в поля и загрузите обложку фильма!");
}
else
{
 
}
в

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void __fastcall TForm5::BitBtn1Click(TObject *Sender)
{
 
Form1->ADOTable2->Insert();
Form1->ADOTable2->FieldByName("Название сериала")->AsString = Edit1->Text;
Form1->ADOTable2->FieldByName("Жанры")->AsString = Edit2->Text;
Form1->ADOTable2->FieldByName("Страна")->AsString = Edit3->Text;
Form1->ADOTable2->FieldByName("Год")->AsString = Edit4->Text;
Form1->ADOTable2->FieldByName("Режиссер")->AsString = Edit5->Text;
Form1->ADOTable2->FieldByName("Время")->AsString = Edit6->Text;
Form1->ADOTable2->FieldByName("Актеры")->AsString = Memo1->Text;
Form1->ADOTable2->FieldByName("Сюжет сериала")->AsString = Memo2->Text;
Form1->ADOTable2->FieldByName("Трейлер")->AsString = Edit7->Text;
 
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)Form1->ADOTable2->FieldByName("Обложка сериала"))->LoadFromStream(strm);
delete strm;
Form1->ADOTable2->Post();
Form5->Hide();
}
т.е. так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
void __fastcall TForm5::BitBtn1Click(TObject *Sender)
{
 
if (Form1->ADOTable1->RecordCount==0)
{
ShowMessage("Запишите данные в поля и загрузите обложку фильма!");
}
else
{
 
Form1->ADOTable1->Insert();
Form1->ADOTable1->FieldByName("Название фильма")->AsString = Edit1->Text;
Form1->ADOTable1->FieldByName("Жанры")->AsString = Edit2->Text;
Form1->ADOTable1->FieldByName("Страна")->AsString = Edit3->Text;
Form1->ADOTable1->FieldByName("Год")->AsString = Edit4->Text;
Form1->ADOTable1->FieldByName("Режиссер")->AsString = Edit5->Text;
Form1->ADOTable1->FieldByName("Время")->AsString = Edit6->Text;
Form1->ADOTable1->FieldByName("Актеры")->AsString = Memo1->Text;
Form1->ADOTable1->FieldByName("Сюжет фильма")->AsString = Memo2->Text;
Form1->ADOTable1->FieldByName("Трейлер")->AsString = Edit7->Text;
 
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)Form1->ADOTable1->FieldByName("Обложка фильма"))->LoadFromStream(strm);
 delete strm;
 Form1->ADOTable1->Post();
Form4->Hide();
}
}
Хочу сделать вот что. По моей программе.
Если например я не записал или пропустил поле куда должен записать данные, или не загрузил картинку, что бы эта запись не добавляла в БД, и показывало бы сообщение о том что должен "Заполнить данные поля и загрузить изображение". При таком коде выше. Когда я уже все заполнил запись(не пропустил ни одного поля и загрузил изображение) не добавляется, все ровно выскакивает эта сообщение "Заполнить данные поля и загрузить изображение". При заполнении данных и изображения, запись должна записаться в БД и не выдовать это сообщение.
Как это по другому записать?
Вложения
Тип файла: rar Kinoteatr.rar (3.03 Мб, 10 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.04.2013, 22:17
Ответы с готовыми решениями:

Подстановка при добавлении данных в таблицу в C++ Builder.
Есть 2 таблицы - Work1 и Exercise. В Work1 2 столбца - дата и упражнение. А в Exercise - ID, и упражнение. Как в C++ Buildere так...

Ошибка при добавлении записи в базу данных
При добавлении записи в базу возникает ошибка. Помогите разобраться. const String ConnStr = "Provider=%s;Data...

Выскакивающее окошко с сообщением при нажатии на ссылку
Подскажите, пожалуйста, имеется ли возможность средствами html и css осуществить следующую задумку: Имеется библиотека, там помимо...

29
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294
10.04.2013, 14:38  [ТС]
Студворк — интернет-сервис помощи студентам
Так записал, так или не так. Запустил. Заполнил все. Нажимаю добавить запись и все ровно сообщение выскакивает и не заносит в базу.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
void __fastcall TForm7::BitBtn2Click(TObject *Sender)      //Êíîïêà Äîáàâèòü çàïèñü
{
 
 
int mbool = 0;
  for (int p=1,i=0;i<Form1->ControlCount;i++)
    if (Form1->Controls[i]->Name=="Edit"+IntToStr(p))
      if (((TEdit*)Form1->Controls[i])->Text.Length()<1)
       { mbool +=1; p++; }
      else p++;
  mbool += Memo1->Text.Length()==0 ? 1 : 0;
  mbool += Memo2->Text.Length()==0 ? 1 : 0;
  mbool += Image1->Picture->Width==0 ? 1 : 0;
  if (mbool) ShowMessage("Çàïîëíèòå âñå ïîëÿ!");
  else
  {   /* âûïîëíåíèå çàíåñåíèÿ â áàçó */
 
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
DataModule2->ADOTable1->FieldByName("Íàçâàíèå ôèëüìà")->AsString = Edit1->Text;
DataModule2->ADOTable1->FieldByName("Æàíðû")->AsString = Edit2->Text;
DataModule2->ADOTable1->FieldByName("Ñòðàíà")->AsString = Edit3->Text;
DataModule2->ADOTable1->FieldByName("Ãîä")->AsString = Edit4->Text;
DataModule2->ADOTable1->FieldByName("Ðåæèññåð")->AsString = Edit5->Text;
DataModule2->ADOTable1->FieldByName("Âðåìÿ")->AsString = Edit6->Text;
DataModule2->ADOTable1->FieldByName("Àêòåðû")->AsString = Memo1->Text;
DataModule2->ADOTable1->FieldByName("Ñþæåò ôèëüìà")->AsString = Memo2->Text;
DataModule2->ADOTable1->FieldByName("Òðåéëåð")->AsString = Edit7->Text;
 
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Îáëîæêà ôèëüìà"))->LoadFromStream(strm);
 delete strm;
 
 DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
 Form7->Hide();   //Çàêðûòü ôîðìó Äîáàâëåíèå çàïèñè â ÁÄ Ôèëüìû
 
//Î÷èñòèòü òåêñò â ïîëÿõ
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
Edit4->Clear();
Edit5->Clear();
Edit6->Clear();
Memo1->Clear();
Memo2->Clear();
Edit7->Clear();
 
 }
 
}
Добавлено через 3 минуты


Добавлено через 5 минут
Сделаю без циклов.

Добавлено через 25 секунд
Не буду сокращать.
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
10.04.2013, 15:16
Цитата Сообщение от Evgeny92 Посмотреть сообщение
(int p=1,i=0;i<Form1->ControlCount;i++)
- здесь Form1 - вы оперируете на Form7... Будем внимательны? или "пусть вам господь бог помагает"?...
1
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294
10.04.2013, 16:18  [ТС]
Вообщем-то так записал, наверное не правильно. Ошибка на строчку:

C++
1
DataModule2->ADOTable1->FieldByName("Íàçâàíèå ôèëüìà")->AsString = Form7->Edit1->Text;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
void __fastcall TForm7::BitBtn2Click(TObject *Sender)      //Êíîïêà Äîáàâèòü çàïèñü
{
 
if (Edit1->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Íàçâàíèå ôèëüìà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Íàçâàíèå ôèëüìà")->AsString = Form7->Edit1->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
 }
 
 
if (Edit2->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Æàíðû!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Æàíðû")->AsString = Form7->Edit2->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
 }
 
 
if (Edit3->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ñòðàíà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ñòðàíà")->AsString = Form7->Edit3->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Edit4->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ãîä!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ãîä")->AsString = Form7->Edit4->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Edit5->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ðåæèññåð!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ðåæèññåð")->AsString = Form7->Edit5->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Edit6->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Âðåìÿ!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Âðåìÿ")->AsString = Form7->Edit6->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Memo1->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Àêòåðû!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Àêòåðû")->AsString = Form7->Memo1->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Memo2->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ñþæåò ôèëüìà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ñþæåò ôèëüìà")->AsString = Form7->Memo2->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if (Edit7->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Òðåéëåð!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Òðåéëåð")->AsString = Form7->Edit7->Text;
DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
}
 
 
if(Image1->Picture->Graphic==NULL)
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Âñòàâüòå Îáëîæêó ôèëüìà");
return;
}
else
{
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Îáëîæêà ôèëüìà"))->LoadFromStream(strm);
 delete strm;
 DataModule2->ADOTable1->Post();  //Çàâåðøåíèå è ñîõðàíåíèå çàïèñè â ÁÄ
 }
 
 
 
Form7->Hide();   //Çàêðûòü ôîðìó Äîáàâëåíèå çàïèñè â ÁÄ Ôèëüìû
 
//Î÷èñòèòü òåêñò â ïîëÿõ
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
Edit4->Clear();
Edit5->Clear();
Edit6->Clear();
Memo1->Clear();
Memo2->Clear();
Edit7->Clear();
 
 
}
Добавлено через 7 минут
Убрал строчку и переместил самый вниз, после Последнего условия.

C++
1
DataModule2->ADOTable1->Post();  //Завершение и сохранение записи в БД
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
void __fastcall TForm7::BitBtn2Click(TObject *Sender)      //Êíîïêà Äîáàâèòü çàïèñü
{
 
if (Edit1->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Íàçâàíèå ôèëüìà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Íàçâàíèå ôèëüìà")->AsString = Form7->Edit1->Text;
 }
 
 
if (Edit2->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Æàíðû!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Æàíðû")->AsString = Form7->Edit2->Text;
 }
 
 
if (Edit3->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ñòðàíà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ñòðàíà")->AsString = Form7->Edit3->Text;
}
 
 
if (Edit4->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ãîä!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ãîä")->AsString = Form7->Edit4->Text;
}
 
 
if (Edit5->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ðåæèññåð!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ðåæèññåð")->AsString = Form7->Edit5->Text;
}
 
 
if (Edit6->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Âðåìÿ!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Âðåìÿ")->AsString = Form7->Edit6->Text;
}
 
 
if (Memo1->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Àêòåðû!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Àêòåðû")->AsString = Form7->Memo1->Text;
}
 
 
if (Memo2->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Ñþæåò ôèëüìà!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Ñþæåò ôèëüìà")->AsString = Form7->Memo2->Text;
}
 
 
if (Edit7->Text=="")
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Ââåäèòå äàííûå Òðåéëåð!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Òðåéëåð")->AsString = Form7->Edit7->Text;
}
 
 
if(Image1->Picture->Graphic==NULL)
{
DataModule2->ADOTable1->Insert();    //Íà÷àëî äîáàâëåíèè çàïèñè
ShowMessage("Âñòàâüòå Îáëîæêó ôèëüìà");
return;
}
else
{
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Îáëîæêà ôèëüìà"))->LoadFromStream(strm);
 delete strm;
 }
 DataModule2->ADOTable1->Post();
 
 
 
Form7->Hide();   //Çàêðûòü ôîðìó Äîáàâëåíèå çàïèñè â ÁÄ Ôèëüìû
 
//Î÷èñòèòü òåêñò â ïîëÿõ
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
Edit4->Clear();
Edit5->Clear();
Edit6->Clear();
Memo1->Clear();
Memo2->Clear();
Edit7->Clear();
 
 
}
Добавлено через 2 минуты
Программа работает. Но работает также. Заполняет данные то что заполнил, после проверки.

Добавлено через 1 минуту
Мне похоже надо
эту строчку куда-то надо девать:
C++
1
DataModule2->ADOTable1->Post();
Тоже под условие сделать.

Добавлено через 8 минут
И эту строчку кстати тоже
C++
1
DataModule2->ADOTable1->Insert();    //Начало добавлении записи
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
10.04.2013, 16:31
Вот смотри как я раньше делал
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
if(ValueListEditor1->Cells[1][1]=="")
 
 {
   Application->MessageBox("Введите инвентарный номер!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 1;
   return;
 }
 else if(ValueListEditor1->Cells[1][2]=="")
 
 {
   Application->MessageBox("Введите номер компьютера в сети!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 2;
   return;
 }
 else if(ValueListEditor1->Cells[1][3]=="")
 
 {
   Application->MessageBox("Введите название отдела!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 3;
   return;
 }
 else if(ValueListEditor1->Cells[1][4]=="")
 {
   Application->MessageBox("Введите название процессора!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 4;
   return;
 }
 else if(ValueListEditor1->Cells[1][5]=="")
 {
   Application->MessageBox("Введите размер памяти!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 5;
   return;
 }
else if(ValueListEditor1->Cells[1][6]=="")
 {
   Application->MessageBox("Введите размер винчестера!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 6;
   return;
 }
else if(ValueListEditor1->Cells[1][7]=="")
 {
   Application->MessageBox("Введите номер комнаты!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 7;
   return;
 }
 else if (ValueListEditor1->Cells[1][8]=="")
 {
   Application->MessageBox("Введите версию Windows!","Внимание",MB_ICONWARNING); //проверка на пустоту строки
   ValueListEditor1->SetFocus();
   ValueListEditor1->Row = 8;
   return;
 }
Далее идёт присвоение значений и вставка строки попробуй переделать как у меня
0
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294
10.04.2013, 16:44  [ТС]
C++
1
2
3
4
5
6
7
8
if [S](DataModule2->ADOTable1->Insert)[/S]  //Как записать?
{
//Внутренние условия
}
else
{
DataModule2->ADOTable1->Post();
}
Чтобы кабы добавить всю запись одновременно

Добавлено через 12 минут
По себе переделал

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
if (Edit1->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Íàçâàíèå ôèëüìà!");
return;
}
else if (Edit2->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Æàíðû!");
return;
}
else if (Edit3->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Ñòðàíà!");
return;
}
else if (Edit4->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Ãîä!");
return;
}
else if (Edit5->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Ðåæèññåð!");
return;
}
else if (Edit6->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Âðåìÿ!");
return;
}
else if (Memo1->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Àêòåðû!");
return;
}
else if (Memo2->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Ñþæåò ôèëüìà!");
return;
}
else if (Edit7->Text=="")
{
ShowMessage("Ââåäèòå äàííûå Òðåéëåð!");
return;
}
else if(Image1->Picture->Graphic==NULL)
{
ShowMessage("Âñòàâüòå Îáëîæêó ôèëüìà");
return;
}
else
{
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Îáëîæêà ôèëüìà"))->LoadFromStream(strm);
 delete strm;
 }
Куда эти строчки вставлять?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
DataModule2->ADOTable1->Insert();    //Начало добавлении записи
 
DataModule2->ADOTable1->FieldByName("Название фильма")->AsString = Form7->Edit1->Text;
 
....
....
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Обложка фильма"))->LoadFromStream(strm);
 delete strm;
 
 
DataModule2->ADOTable1->Post();
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
10.04.2013, 16:59
Пробуй так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
if (Edit1->Text=="")
{
ShowMessage("Введите данные Название фильма!");
return;
}
else if (Edit2->Text=="")
{
ShowMessage("Введите данные Жанры!");
return;
}
else if (Edit3->Text=="")
{
ShowMessage("Введите данные Страна!");
return;
}
else if (Edit4->Text=="")
{
ShowMessage("Введите данные Год!");
return;
}
else if (Edit5->Text=="")
{
ShowMessage("Введите данные Режиссер!");
return;
}
else if (Edit6->Text=="")
{
ShowMessage("Введите данные Время!");
return;
}
else if (Memo1->Text=="")
{
ShowMessage("Введите данные Актеры!");
return;
}
else if (Memo2->Text=="")
{
ShowMessage("Введите данные Сюжет фильма!");
return;
}
else if (Edit7->Text=="")
{
ShowMessage("Введите данные Трейлер!");
return;
}
else if(Image1->Picture->Graphic==NULL)
{
ShowMessage("Вставьте Обложку фильма");
return;
}
 
DataModule2->ADOTable1->Insert(); 
DataModule2->ADOTable1->FieldByName("Название фильма")->AsString = Form7->Edit1->Text;
//и т.д идёт перечисление присвоений полям
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Обложка фильма"))->LoadFromStream(strm);
 delete strm;
 strm = NULL;
DataModule2->ADOTable1->Post();
 Form7->Hide();   //Закрыть форму Добавление записи в БД Фильмы
 
//Очистить текст в полях
Edit1->Clear();
Edit2->Clear();
Edit3->Clear();
Edit4->Clear();
Edit5->Clear();
Edit6->Clear();
Memo1->Clear();
Memo2->Clear();
Edit7->Clear();
1
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294
10.04.2013, 17:16  [ТС]
Надо как-то написать
C++
1
DataModule2->ADOTable1->Insert();
и
C++
1
DataModule2->ADOTable1->Post();
Сделать контейнером(Тоже както в if записать), а внутри

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
if (Edit1->Text=="")
{
ShowMessage("Введите данные Название фильма!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Название фильма")->AsString = Form7->Edit1->Text;
 }
 
 
if (Edit2->Text=="")
{
ShowMessage("Введите данные Жанры!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Жанры")->AsString = Form7->Edit2->Text;
 }
 
 
if (Edit3->Text=="")
{
ShowMessage("Введите данные Страна!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Страна")->AsString = Form7->Edit3->Text;
}
 
 
if (Edit4->Text=="")
{
ShowMessage("Введите данные Год!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Год")->AsString = Form7->Edit4->Text;
}
 
 
if (Edit5->Text=="")
{
ShowMessage("Введите данные Режиссер!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Режиссер")->AsString = Form7->Edit5->Text;
}
 
 
if (Edit6->Text=="")
{
ShowMessage("Введите данные Время!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Время")->AsString = Form7->Edit6->Text;
}
 
 
if (Memo1->Text=="")
{
ShowMessage("Введите данные Актеры!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Актеры")->AsString = Form7->Memo1->Text;
}
 
 
if (Memo2->Text=="")
{
ShowMessage("Введите данные Сюжет фильма!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Сюжет фильма")->AsString = Form7->Memo2->Text;
}
 
 
if (Edit7->Text=="")
{
ShowMessage("Введите данные Трейлер!");
return;
}
else
{
DataModule2->ADOTable1->FieldByName("Трейлер")->AsString = Form7->Edit7->Text;
}
 
 
if(Image1->Picture->Graphic==NULL)
{
ShowMessage("Вставьте Обложку фильма");
return;
}
else
{
TMemoryStream* strm = new TMemoryStream();
Image1->Picture->Graphic->SaveToStream(strm);
((TGraphicField*)DataModule2->ADOTable1->FieldByName("Обложка фильма"))->LoadFromStream(strm);
 delete strm;
 }
Добавлено через 4 минуты
Сейчас попробую

Добавлено через 5 минут
Спасибо большое всем, наконец-то заработало как надо.
0
10.04.2013, 17:18

Не по теме:


не надо там ничё выдумывать сделай как я написал

1
 Аватар для Evgeny92
277 / 5 / 4
Регистрация: 09.11.2011
Сообщений: 294
10.04.2013, 17:24  [ТС]
Я написал как вы написали, помогло.
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
10.04.2013, 17:40
Цитата Сообщение от Evgeny92 Посмотреть сообщение
Я написал как вы написали, помогло.

Не по теме:

НУ и отлично

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.04.2013, 17:40

Окошко с сообщением
Здравствуйте, у меня такой вопрос, вот я придумал такую игру детскую, суть такова, на форме 4 GroupBox'а, в одном GroupBox расположены 6...

Не показывать окошко с сообщением
Как отключить появление окошка с вопросом &quot;Заменить содержимое конечных ячеек?&quot; - появляется при копировании области данных на...

показать окошко с сообщением в word
Всем привет. Есть небольшая проблема с формированием документа word. Все создается, формируется, но хочется в конце всего формирования...

При добавлении в таблицу 40 столбцов в БД mysql, в phpMyAdmin выскакивает диалоговое окошко с ошибкой
Здравствуйте. Я использую локальный сервер OpenServer. Так вот у меня есть таблица в ней 39 стлбцов. Как только я создаю новый столбец в...

Дублирование записи в определенном поле при добавлении новой записи
Добрый день. Подскажите пожалуйста, есть у меня запрос на создание таблицы где в созданной таблице в первом поле проставляется значение 2....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru