tqueryでデータ更新できない

解決


delphihatu  2013-06-18 00:37:07  No: 44691

こんにちは。delphiの勉強を始めたばかりのものです。
tqueryを使ってDB更新をしたいのですが、以下のとおりです。
query.sql.clear();
query.sql.add('xxxxxxxxxxxxxx');
query.sql.ExecSQL;

sql文は問題ないのですが、これを実行すると落ちて、反応がありません。
どこが問題なのでしょうか?


Quest  2013-06-18 00:48:48  No: 44692

Delphiのバージョンは何でしょう?
データベースは何を使用していますか(そのバージョンは)?
SQL文に問題が無いことはどうやって確認しましたか?
最後の行はコンパイルできます?
query.ExecSQLではないですか?
「落ちる」とは具体的にどうなりますか?
エラーメッセージなどは表示されませんか?
queryのDatabaseNameプロパティには何を設定していますか?
エリアスって分かりますか?
質問に質問で返すのは失礼ですが、これらを聞かないことには
どこが問題かと聞かれても答えようがないので。


delphihatu  2013-06-18 00:55:17  No: 44693

Questさん
すいません。大雑把な質問で失礼しました。

>Delphiのバージョンは何でしょう?
Delphiは2006です。

>データベースは何を使用していますか(そのバージョンは)?
DBはオラクルの10Gです。

>SQL文に問題が無いことはどうやって確認しましたか?
SQLはオブジェクトブラウザで確かめたので問題ないです。
>最後の行はコンパイルできます?
コンパイルはできます。

>「落ちる」とは具体的にどうなりますか?
>エラーメッセージなどは表示されませんか?
落ちるというのは何の反応もなく砂時計になっていることです。
エラーメッセージはないです。

>queryのDatabaseNameプロパティには何を設定していますか?
Databasenameの設定はしています。
エリアスも設定済みです。

>query.ExecSQLではないですか?
query.ExecSQLです。失礼しました。


Quest  2013-06-18 01:22:14  No: 44694

そのSQLは時間が掛かるものですか?
データベースをあらかじめオープンしておいたらどうでしょう?
オラクルは同じPCで動いてますか?他のPCへリモート接続ですか?
SQLが単純なものなら、DBへの接続に時間が掛かっている気がしますが。
コードで明示的にDBのオープンを書いて、どの処理で時間が掛かる(止まる)のか
切り分けてみてはいかがでしょう。


delphihatu  2013-06-18 01:29:46  No: 44695

解決しました。コードで明示的にDBをオープンしたら動きました。


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

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






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