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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2009, 22:19   #21
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А где QuotedStr() ?
mihali4 вне форума Ответить с цитированием
Старый 15.12.2009, 22:25   #22
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Добавила - это не помогло... Ошибка та же самая... BD.rar
Sianessa вне форума Ответить с цитированием
Старый 15.12.2009, 23:37   #23
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Код:
procedure TForm1.Button6Click(Sender: TObject);
var Sql, Param :string ;
ID, {NewID}, Firma, Model, Parametr, Stoimost:string;
begin

     Firma :=QuotedStr(StringGrid1.Cells[1,0]);
     Model := QuotedStr(StringGrid1.Cells[2,0]);
     Parametr :=  QuotedStr(StringGrid1.Cells[3,0]);
     Stoimost := QuotedStr(StringGrid1.Cells[4,0]);
     //Формирование SQL-запроса     //
begin

     Sql := 'Insert INTO Zakaz'+
                 ' (Firma, Model, Parametr, Stoimost) ';//, ID) ';
     Param := 'Values (' + Firma +  ', '
                         + Model +  ', '
                         + Parametr + ', '
                         + Stoimost+')';// + ','
                         //+ NewID + ') ' ;
  end;
   Query3.SQL.Clear;
   Query3.SQL.Add(Sql);
   Query3.SQL.Add(Param);
      ShowMessage(Query3.SQL.GetText); //Для проверки
  Query3.ExecSQL;
  Form1.Query1.Close;
  Form1.Query1.Open;

//close;//зачем закрывать программу-то ???

end;
mihali4 вне форума Ответить с цитированием
Старый 15.12.2009, 23:46   #24
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

mihali4, ОЧЕНЬ ВАМ БЛАГОДАРНА!
Просто безмерно!
Значит опять с ID Этим не так было...
Ну с закрытием программы, это я что-то уж вообще... мозга за мозгу зашла...
Спасибо ещё раз!
Sianessa вне форума Ответить с цитированием
Старый 17.12.2009, 18:51   #25
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Эмм... Это опять я... =_=
В общем препод сказал ещё сделать, чтобы из таблицы в БД Zakaz была кнока удаления и можно было удалить выделенный заказ в DBGrid...
Естественно попыталась прописать по тому же принципу, что и всё предыдущее, но опять ТА ЖЕ ошибка.

Вот код:
Код:
procedure TForm3.Button1Click(Sender: TObject);
var Sql, Param :string ;
ID, Firma, Model, Parametr, stoimost:string;
begin
     Firma :=Query1.FieldByName('Firma').AsString;
     Model := Query1.FieldByName('Model').AsString;
     Parametr := Query1.FieldByName('Parametr').AsString;
     Stoimost :=  Query1.FieldByName('Stoimost').AsString;
Sql := 'DELETE  Zakaz SET ';
Param := 'Firma='  + Firma      +
        ', Model='     + Model      +
        ', Parametr='    + Parametr    +
        ', Stoimost=' + Stoimost  +
         ', ID=' + ID ;

Query3.SQL.Clear;
   Query3.SQL.Add(Sql);
   Query3.SQL.Add(Param);
   ShowMessage(Query3.SQL.GetText); //Для отладки
   Query3.ExecSQL;

   Form1.Query3.Close;
   Form1.Query3.Open;


end;
Сами исходники для полноты картины:
BD.rar

Пожалуйста, помогите найти ошибку
Sianessa вне форума Ответить с цитированием
Старый 17.12.2009, 21:18   #26
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Синтаксис SQL для удаления (пример):
Код:
DELETE FROM PEOPLE WHERE ID=3
Между прочим, на форуме полно ссылок на хорошие книги.
mihali4 вне форума Ответить с цитированием
Старый 17.12.2009, 21:29   #27
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

mihali4, того что надо в книгах я чаще всего не нахожу и написано везде непонятным и замудрённым языком...
Я пробовала написать так, но оно вообще выдаёт кучу ошибок... И в чём дело, я не знаю...
В интернете нарыла кучу похожих примеров, но от каждого из них всё время ошибки.. этот пример тоже рассматривала, который привели Вы,
но он только больше ругается... и ещё, я не знаю что мне писать в моём случае после WHERE...
Писала вот так:

Код:
rocedure TForm3.Button1Click(Sender: TObject);
var Sql, Param :string ;
 begin
Query3.SQL.Clear;
   Query3.SQL.Add(Sql);
   Query3.SQL.Add(Param);
   ShowMessage(Query3.SQL.GetText); //Для отладки
   Query3.ExecSQL;
   DELETE FROM Zakaz
   Form1.Query3.Close;
   Form1.Query3.Open;
end;
Sianessa вне форума Ответить с цитированием
Старый 17.12.2009, 23:00   #28
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Query3.SQL.Text:='delete from zakaz where id='+
Form1.Query1.FieldByName('DepId').A sString;
mihali4 вне форума Ответить с цитированием
Старый 17.12.2009, 23:13   #29
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

mihali4, этот код насколько я поняла (и перелопатила его под себя) весь DBGrid очищает... А как сделать так, чтобы построчно удалялось? ну чтобы удалялась только выделенная строка?

Последний раз редактировалось Sianessa; 17.12.2009 в 23:17.
Sianessa вне форума Ответить с цитированием
Старый 18.12.2009, 17:50   #30
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

я так и не смогла сделать чтобы 1 строка удалялась (((
В интернете искала везде ссылки только на компоненты через ADO, а на обычные Query например нету...(((

Та же фигня со StringGrid-ом...
Sianessa вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в БД:Invalid use of keyword (Delphi) Zibiv Помощь студентам 5 29.11.2009 10:57
Ошибка EInOutError: Invalid numeric input Croesus Общие вопросы Delphi 1 15.03.2009 08:36
Ошибка C2248. Помогите исправить Ascor Общие вопросы C/C++ 2 03.06.2008 00:56
Видимо ошибка в функции(помогите исправить) GAGARIN-NEW Общие вопросы Delphi 18 07.05.2008 12:30
Ошибка: Invalid value for field... (ADO) Кот из Лета БД в Delphi 5 26.12.2007 14:02