Помогите с UpdateSQL
Если не трудно-скиньте ссылку где можно почитать об UpdateSQL
У меня есть запрос Query из нескольких таблиц. Как зделать Insert,Modify,Delete при помощи UpdateSQL если в этих таблицах есть одинаковые поля для связи?
Если не трудно-скиньте ссылку где можно почитать об UpdateSQL
Не обязательно UpdateSQL, можно что-нибудь другое
для редактирования целого запроса а не таблиц по очереди.
AnsiString s,sSQL;
const AnsiString s1 =",";
s="";
sSQL = "Update Pers SET ";
if (Query1->Fields->Fields[0]->AsString != Edit1->Text)
{
if (s != "") { s += s1; sSQL += s1; }
s += " фамилию";
sSQL += "Fam='"+Edit1->Text+"'";
}
if (Query1->Fields->Fields[1]->AsString != Edit1->Text)
{
if (s != "") { s += s1; sSQL += s1; }
s += " имя";
sSQL += "Nam='"+Edit1->Text+"'";
}
if (Query1->Fields->Fields[2]->AsString != Edit3->Text)
{
if (s != "") { s += s1; sSQL += s1; }
s += " отчество";
sSQL += "Par='"+Edit3->Text+"'";
}
if (s != "")
if (Application->MessageBox(
("Действительно хотите изменить "+s+"?").c_str(),
"Подтвердите занесение в базу данных",
MB_YESNO + MB_ICONQUESTION) == IDYES)
{
Query2->Close();
Query2->SQL->Clear();
Query2->SQL->Add(sSQL+" WHERE Num=" + IntToStr(Query1->Fields->Fields[3]->AsInteger));
Query2->ExecSQL();
Query1->Close();
Query1->Open();
В первую таблицу записывает в вставленную строку. А во второй таблице записывает не в вставленную строку, а заменяет первую строку.