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


てつ  2005-02-12 19:34:20  No: 13194

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


通りすがり  2005-02-12 20:38:46  No: 13195

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


てつ  2005-02-12 20:44:44  No: 13196

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


てつ  2005-02-12 20:49:30  No: 13197

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


てつ  2005-02-12 20:54:11  No: 13198

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


通りすがり  2005-02-12 20:59:14  No: 13199

> 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

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


HOta  2005-02-13 04:39:47  No: 13201

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


てつ  2005-02-13 05:09:04  No: 13202

>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

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加