- PR -

torque3.0.2で複数テーブルの値を一度に取得できますか?

1
投稿者投稿内容
C'zka
ベテラン
会議室デビュー日: 2003/09/04
投稿数: 64
投稿日時: 2003-10-02 13:42
もしかしたら既出なのかもしれませんが、検索をかけて見当たらなかったので
質問させていただきます。

質問内容は、件名のとおりで
select a.id, a.name b.address from Custom_tbl a, Address_Tbl b
where a.id = b.id;
のような検索を行って一発で値を取得することは出来るのでしょうか?

一応googleで検索をかけては見ましたが、なかなか出てこなかった為検証に至っていない状態です。

Kiriko
常連さん
会議室デビュー日: 2003/09/25
投稿数: 25
投稿日時: 2003-10-02 16:06
こんにちは。

引用:

C'zkaさんの書き込み (2003-10-02 13:42) より:
質問内容は、件名のとおりで
select a.id, a.name b.address from Custom_tbl a, Address_Tbl b
where a.id = b.id;
のような検索を行って一発で値を取得することは出来るのでしょうか?



できます。
やり方については以下のURLを参照してください。
http://db.apache.org/torque/peers-howto.html

私はTorqueについて先週の土曜日から勉強しはじめました。
Torqueについては、Strutsなどのオープンソースに比較して
まだまだ日本語による情報が少ないという状況ですが、
ある程度英語文章が読めれば、
習得するのにはそんなに多くの時間はかからないと思います。
(私は2日目でJoinができるようになりました)

私は次のようにして学習しました。
1.Torqueのインストールや簡単な使い方に関する日本語サイトを参照した。
2.実際Torqueをインストールして、簡単なプログラムを書いて実行してみた。
3.TorqueのチュートリアルやHow toガイド(いずれも英語)を読んで、
  色々な使い方を勉強した。
4.3で得た知識を元に、複雑なSQLを実行するプログラムを書いて実行してみた。
5.実現方法がわからないSQLに対しては、Torque-userメーリングリスト(英語)の
  過去の記事を検索して実現方法を習得した。

プロジェクトでTorqueの採用を検討されているのならば、
まずはTorqueのチュートリアルやHow toガイドに目を通すことが
「王道」のように感じます。
それでも得られない情報はTorque-userメーリングリストで検索してみるのが
よいのではないでしょうか。
また、次の雑誌のTorqueに関する記事は、
非常に有用でかなりお薦めです。
「WEB+DB PRESS Vol.15 2003」技術評論社

Torqueの採用については日本語情報が少なくて不安だという人が
いるかもしれませんが、
調べようという「意思」があれば、多くの情報を得られる状況だというのが
私の感想です。
以上です。
Kiriko
常連さん
会議室デビュー日: 2003/09/25
投稿数: 25
投稿日時: 2003-10-02 16:21
たびたび失礼します。

引用:

Kirikoさんの書き込み (2003-10-02 16:06) より:
やり方については以下のURLを参照してください。
http://db.apache.org/torque/peers-howto.html


上のURLは、Torque 3.1に関する情報ですが、
Torque3.0でも同様に対応できます。
Torque3.0に関するチュートリアル&How Toガイドなどの
ドキュメントはTorqueを解凍したローカルディレクトリの
のどこかにあると思います。

以上です。
C'zka
ベテラン
会議室デビュー日: 2003/09/04
投稿数: 64
投稿日時: 2003-10-03 18:38
DB周りの作業を行っていてなかなかレスがかけませんでした。
Kirikoさん、レスありがとうございます。

先ほど、How Toを読みながらメソッドを書いてみたのですが、
addJoinメソッドの場合、
select a.id, a.name from Custom_tbl a, Address_Tbl b
where a.id = b.id;

という形のものは取得できたのですが、本来の取得したいマージされた値ではないので
テーブル名を変えて再度検索を行わなければならないと思うのですが、まだ見落としが
あるのでしょうか・・・・・

またしばらくは検索を続けたいと思います。
C'zka
ベテラン
会議室デビュー日: 2003/09/04
投稿数: 64
投稿日時: 2003-10-03 18:52
すいません、見落としていました・・・

Joins and linking objects
という項目のところですね。

XX-Schema.xmlに外部キーの結合条件を書けばJoinで2テーブルの結合が行えるということですね。
記述方法がわからないので、dtdファイルを落として確認してみます。
Kiriko
常連さん
会議室デビュー日: 2003/09/25
投稿数: 25
投稿日時: 2003-10-03 18:59
こんばんは。

引用:

C'zkaさんの書き込み (2003-10-03 18:38) より:
DB周りの作業を行っていてなかなかレスがかけませんでした。


お忙しそうですね^^;

引用:

先ほど、How Toを読みながらメソッドを書いてみたのですが、
addJoinメソッドの場合、
select a.id, a.name from Custom_tbl a, Address_Tbl b
where a.id = b.id;

という形のものは取得できたのですが、本来の取得したいマージされた値ではないので
テーブル名を変えて再度検索を行わなければならないと思うのですが、まだ見落としが
あるのでしょうか・・・・・


私が載せたURLの記事を本当にお読みになったのでしょうか?
DB回りの作業がお忙しくて実際はあまり読んでないのではないでしょうか?

おそらく前の投稿に書きました技術評論社の本を
購入され、お読みになるのがよいのかなと想像します。

以上です。
Kiriko
常連さん
会議室デビュー日: 2003/09/25
投稿数: 25
投稿日時: 2003-10-03 19:04
引用:

XX-Schema.xmlに外部キーの結合条件を書けばJoinで2テーブルの結合が行えるということですね。
記述方法がわからないので、dtdファイルを落として確認してみます。


すでにデータベースにテーブルを作成してあれば、
スキーマ情報を読んでschema.xmlファイルを作成することができます。

C'zka
ベテラン
会議室デビュー日: 2003/09/04
投稿数: 64
投稿日時: 2003-10-06 11:52
今朝、なんとか2テーブルの取得が出来るようになりました。
教えていただいた雑誌も買ってきて読んでみましたが、ちゃんと3テーブル以上でも取得できるんですね^^;

あとは、VSSでソース管理されていないomをかけたPeerクラスのprotectedになっているメソッドをどうやってpublicにするかだな・・・
あ、これはスレッド違いなのでお気になさらず

ありがとうございました。またお世話になるかもしれませんが、よろしくお願いいたします。
1

スキルアップ/キャリアアップ(JOB@IT)