Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.03;
Скачать: CL | DM;

Вниз

Запрос   Найти похожие ветки 

 
NigthSkif   (2006-11-13 06:52) [0]

Доброе время суток всем. Скажите, что не так

q := TQuery.Create(nil);
  q.DatabaseName := "DB";
  q.Close;
  q.Params.CreateParam(ftInteger, "Rez", ptOutput);
  q.Params.CreateParam(ftString, "NewName", ptInput);
  q.SQL.Clear;
  q.Params.ParamByName("NewName").AsString := edtName.Text;
  q.SQL.Add("IF EXISTS (SELECT Nam FROM dbNames WHERE Nam= :NewName) " +
              "SELECT begin :Rez=1 end "+
            "ELSE " +
              "begin " +
                  "INSERT INTO dbNames(Nam) " +
                  "VALUES(NewName) " +
                  "SELECT :Rez=0 " +
              "end");

  q.ExecSQL;
  i := q.Params.ParamByName("Rez").AsInteger;
  q.Close;
  q.Destroy;

Когда выполнятся, говорит следующее: Field Rez=1 is of an unknown type.
Чем лечить?


 
Johnmen ©   (2006-11-13 10:04) [1]


>  Скажите, что не так


1. q.Close;
Зачем закрывать неоткрытую дверь?
2. q.SQL.Clear;
Зачем выливать воду из пустого стакана?
3. Такое создание параметров - это бред. Как работать с параметрическим запросом написано в F1 с примерами.
4. И самое главное
IF EXISTS ....
Это не запрос!


 
Anatoly Podgoretsky ©   (2006-11-13 10:21) [2]

3. и бессмысленно, они все равно уничтожаются несколькими строками ниже и не один раз


 
Desdechado ©   (2006-11-13 11:47) [3]

Anatoly Podgoretsky ©   (13.11.06 10:21) [2]
Это зависит от настроек TQuery, но поскольку автор их не меняет, то действительно у него все параметры затираются.

5. Обращение Params.ParamByName несколько избыточно, достаточно просто ParamByName



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

Текущий архив: 2006.12.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
2-1163458328
santey
2006-11-14 01:52
2006.12.03
ShowMessage


15-1163660330
DelphiLexx
2006-11-16 09:58
2006.12.03
Какой метод есть у DBGridEh a аналогичный TBDGrid.CalcTitleRight?


15-1163270326
Alatiel
2006-11-11 21:38
2006.12.03
Delphi 7: could not find valid product information


15-1163285673
lookin
2006-11-12 01:54
2006.12.03
ISO - напомните плз, какой программой его можно превратить в AVI


15-1163512415
Александр Иванов
2006-11-14 16:53
2006.12.03
По XPath кто-нибудь подскажет?