TQueryにADDしたUpdate文を実行するには?


てつ  2005-02-12 19:34:20  No: 13194  IP: [192.*.*.*]

テーブルのデータを、UpdateQueryを使用しないでUpdateしたいため、
TQueryにたいして、
SQL.Clear;
SQL.Add(update テーブル set 品番='BK');
SQL.ExecSQL;
と書いたところ「ハンドルエラー」と表示され、アップデートされません。
Updateするにはどうしたらよいのでしょうか?

編集    削除
通りすがり  2005-02-12 20:38:46  No: 13195  IP: [192.*.*.*]

> SQL.Clear;
> SQL.Add(update テーブル set 品番='BK');
> SQL.ExecSQL;
コンパイル出来ましたか?

編集    削除
てつ  2005-02-12 20:44:44  No: 13196  IP: [192.*.*.*]

>通りすがり様
コンパイルはできたのですが、、、
本当は通らないのでしょうか?

編集    削除
てつ  2005-02-12 20:49:30  No: 13197  IP: [192.*.*.*]

すみません書き方が間違ってました。
with TQuery do
  begin
    SQl.Cler;
    SQL.Add(update テーブル set 品番='BK');
    ExecSQL;
  end;
でした。

編集    削除
てつ  2005-02-12 20:54:11  No: 13198  IP: [192.*.*.*]

自レスですが、
SQL.Add(update テーブル set 品番='BK');
の、品番='BK'を過去ログにあった品番=''BK''
としても同じエラーがでました。

編集    削除
通りすがり  2005-02-12 20:59:14  No: 13199  IP: [192.*.*.*]

> with TQuery do
>   begin
>     SQl.Cler;
>     SQL.Add(update テーブル set 品番='BK');
>     ExecSQL;
>   end;
これは通らないと思います。
with Query1 do begin
  SQL.Clear;
  SQL.Add('update テーブル set 品番=''BK''');
  ExecSQL;
end;
ではないでしょうか?

編集    削除
通りすがり  2005-02-12 21:31:24  No: 13200  IP: [192.*.*.*]

> コンパイルはできたのですが、、、
失礼しました、見落としましたm(__)m
コンパイルできているのですね。
「ハンドルエラー」の経験をしたことがないので私にはわかりません。

編集    削除
HOta  2005-02-13 04:39:47  No: 13201  IP: [192.*.*.*]

TQueryは型の名前ですから
実際のTQueryの名前は何でしょうか?
実際のコードを見せてください。

編集    削除
てつ  2005-02-13 05:09:04  No: 13202  IP: [192.*.*.*]

>HOta 様
実際のコードは以下のとおりになります。
var
 SetUp : String;
begin
 SetUp := 'Update zaiko set Serial =''BCK01''';
 With UpdateModule.UpQuery do
      begin
        SQL.Clear;
        SQL.Add (SetUp);
        ExecSQL;
      end; 
処理としては在庫テーブルの品番をまとめてBCK01に変更したいだけなんですができませんでした。

編集    削除
HOta  2005-02-13 17:11:01  No: 13203  IP: [192.*.*.*]

Update zaiko set Serial ='BCK01'
を直接データーベースに適用できますでしょうか?
「ハンドルエラー」とのことですが、
別に再度プロジェクトを作り、この部分だけを実行しても
エラーになるでしょうか?
このソースからだけでは問題ないように見えます。

編集    削除