Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];

Вниз

ADOQuery, SQL и MSAccess   Найти похожие ветки 

 
parovoZZ ©   (2006-02-17 23:15) [0]

Почему вот это работает
 begin
  Doc := WebBrowser.Document as IHTMLDocument2;
  Element := Doc.All.Item ("text", 0) as IHTMLElement;
  Mes := Element.outerText;
  SQL := "INSERT INTO Messages (Message, Author, Equipment, Date_Time) VALUES (prmMessage, prmUser, prmID, Now())";
  ADOQuery.Close;
  ADOQuery.SQL.Clear;
  ADOQuery.SQL.Add(SQL);
  ADOQuery.Parameters.ParamByName("prmMessage").Value := Mes;
  ADOQuery.Parameters.ParamByName("prmUser").Value := User_ID;
  ADOQuery.Parameters.ParamByName("prmID").Value := Equipment_ID;
  ADOQuery.ExecSQL;
  StatusBar.Panels[0].Text := "...";
  TrVChange (TObject (TrV), TrV.Selected);
 end;


и это тоже
      SysID := PTableData (Node.Parent.Data)^.ID;

      SQL := "SELECT Equipment, Equipment_ID FROM Equipments WHERE (Object=:prmID) and (System=:prmSys)";
      AdoQuery.Close;
      AdoQuery.SQL.Clear;
      AdoQuery.SQL.Add(SQL);
      AdoQuery.Parameters.ParamByName("prmID").Value := TableData.ID;
      ADOQuery.Parameters.ParamByName("prmSys").Value := SysID;
      AdoQuery.Open;


А вот это не работает
    begin
     Element := Doc.All.Item ("element", 0) as IHTMLElement;
     Mes := Element.getAttribute("value", 0);
     SQL := "INSERT INTO Equipments (System, Object, Equipment, Notes) VALUES (prmSys, prmObj, prmEquip, prmNote)";
     ADOQuery.Close;
     ADOQuery.SQL.Clear;
     ADOQuery.SQL.Add(SQL);
     ADOQuery.Parameters.ParamByName("prmSys").Value := PTableData (ParentNode.Parent.Data)^.ID;
     ADOQuery.Parameters.ParamByName("prmObj").Value := PTableData (ParentNode.Data)^.ID;
     ADOQuery.Parameters.ParamByName("prmEquip").Value := Mes;
     Element := Doc.All.Item ("text", 0) as IHTMLElement;
     Mes := Element.outerText;
     ADOQuery.Parameters.ParamByName("prmNote").Value := Mes;
     ADOQuery.ExecSQL;
    end;


пишет "ADOQuery: Parameter "prmSys" not found".

Если сделать так
SQL := "INSERT INTO Equipments VALUES (?, prmEquip,  prmSys, prmObj, prmNote)"
то работает, но я не знаю, что ставить вместо знака вопроса - там автоинкрементное поле.


 
Anatoly Podgoretsky ©   (2006-02-18 00:05) [1]

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


 
ЮЮ ©   (2006-02-18 07:33) [2]

И где же в запросе
INSERT INTO Equipments (System, Object, Equipment, Notes) VALUES (prmSys, prmObj, prmEquip, prmNote)
параметры?

INSERT INTO Equipments (System, Object, Equipment, Notes) VALUES (:prmSys, :prmObj, :prmEquip, :prmNote)

Найди 4 отличия


 
parovoZZ ©   (2006-02-18 17:09) [3]


> только надо указать явный список полей, как в первом примере.

C таблицей в первом примере работает, второй пример с другой таблицей тоже работает, а с той же таблицей, но INSERT - не работает.


> INSERT INTO Equipments (System, Object, Equipment, Notes)
> VALUES (:prmSys, :prmObj, :prmEquip, :prmNote)
Найди 4 отличия

Результат: "ошибка синтаксиса в инструкции INSERT INTO".


 
parovoZZ ©   (2006-02-18 22:57) [4]

Ыца дрыца гоп цаца
Было так
     SQL := "INSERT INTO Equipments (Equipment_name, System, Object, Notes) VALUES (prmEquip, prmSys, prmObj, prmNote)";

Я сделал так
     SQL := "INSERT INTO Equipments (Equipment_name, System, Object_, Notes) VALUES (prmEquip, prmSys, prmObj, prmNote)";
И всё заработало. Что же такое Object в SQL ?

Почему вот это работает

SQL := "SELECT Object, Object_name FROM Equipments, Objects WHERE (System=:prmID) and (Object=Object_ID) GROUP BY Object, Object_name";


 
parovoZZ ©   (2006-02-19 00:03) [5]

И вдогонку
Можно как-то получить значение автоинкриментного поля (через триггер или ещё как) после запроса INSERT?


 
parovoZZ ©   (2006-02-19 18:01) [6]

Неужели никто не знает?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.012 c
2-1140240800
Начинающий5
2006-02-18 08:33
2006.03.05
Редактирование данных в запросе


11-1120806487
Jumper
2005-07-08 11:08
2006.03.05
Курсор в RichEdit


15-1139571443
Cerberus
2006-02-10 14:37
2006.03.05
DVD в .Avi


4-1134737392
Nickolay
2005-12-16 15:49
2006.03.05
WM_DEVICECHANGE - отлов подключения/отключения USB-устройства


2-1139640073
Интересующийся
2006-02-11 09:41
2006.03.05
Обработка сервером формы пришедшей от клиента





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский