SQLs@...

解決


陽音  2009-03-01 10:44:14  No: 33502  IP: 192.*.*.*

初めて質問させていただきます。

例えば、下記のようなSql文でレコード行(1,2,3,...n)も一緒に表示
させることは出来るのでしょうか?。
Sql文 .... Select * Fron Table_Name
Data項目は .. ItemA, ItemB

解り難い文で申し訳ありませんが、ご存じの方が居られましたら
宜しくお願い致します。教えて下さい。

編集 削除
陽音  2009-03-01 10:47:44  No: 33503  IP: 192.*.*.*

失礼しました。
見出しが文字化けの様です。

「Sql文で ...」 です。

編集 削除
igy  2009-03-01 11:30:09  No: 33504  IP: 192.*.*.*

>教えて下さい。

実際、そのSQL文を実行して、確認してみましたか?

編集 削除
igy  2009-03-01 11:51:21  No: 33505  IP: 192.*.*.*

>Sql文 .... Select * Fron Table_Name

で、“Fron”は、“From”ですね。

編集 削除
陽音  2009-03-01 12:06:14  No: 33506  IP: 192.*.*.*

igy 様。

>で、“Fron”は、“From”ですね。

そうですね、間違ってました。訂正致します。
Sql文 .... Select * From Table_Name  です。

編集 削除
igy  2009-03-01 12:50:37  No: 33507  IP: 192.*.*.*

>そうですね、間違ってました。訂正致します。

で、SQL文を実行して、試したのですか?
(お望みの結果は、表示できましたか?)

編集 削除
nobukoshi802  2009-03-03 20:35:41  No: 33508  IP: 192.*.*.*

データベースの種類が分からないのですが
通常でしたら SELECT * FROM Table_Nameで
Table_Nameの項目をすべて取得しているはずです。
レコード取得後、それぞれの項目を表示する処理が必要です。
テーブルからCSV出力時によく実行します。
ちがうかな?

var
 F: TextFile;
 S1: string;
 i: integer;

...Login設定およびSQL文の実行

    while not(OracleQuery1.Eof) do
    begin
      //1行をS1に入れる
      for i := 0 to (OracleQuery1.FieldCount - 1) do
      begin
        if i = 0 then
          S1 := OracleQuery1.FieldAsString(0)
        else
          S1 := S1 + ',' + OracleQuery1.FieldAsString(i)
      end;

      Writeln(F, S1);
      OracleQuery1.Next;
    end;

編集 削除
何を突然!!  2009-03-04 01:31:43  No: 33509  IP: 192.*.*.*

別スレでないとおかしいでしょ???

質問はきちんとして下さい!!

編集 削除
何を突然!!  2009-03-04 01:35:49  No: 33510  IP: 192.*.*.*

上↑↑↑

間違えました・・・失礼しました!

編集 削除
陽音  2009-03-04 07:58:33  No: 33511  IP: 192.*.*.*

nobukoshi802 様。 返信有り難うございます。

> データベースの種類が分からないのですが

申し訳有りません。  データベースは、FireBird(InterBse) + IBX をその時の
状況で下記の様に使い分けて居ります。

(A). TIBQuery + TStringGridで表示する。
基本的には、nobukoshi802 様に教えて頂いた方法と同じですが、一度読み込ん
だデータをTStringGridに展開しています。  色々応用は利くのですが反面、
記述が多くなりチョッと面倒です。

(B).TIBQuery + TDBGridで表示する。
これは、二つのリンクさせれば読み込み即表示で簡単なので、利用頻度も多い
です。
そこで、「行番号」的な物が表示出来ないかと、手持ちの資料やネットで探して
見ましたが見つからなく今回質問させて頂いた次第です。

TDBGridのOnDrawColumnCell使って再描画させれば出来そうなのですが....

この掲示板(Q&A)は、新参物はあまり歓迎されないようなので、今回は「解決」と
させて頂きます。

nobukoshi802 様、 本当に有り難うございました。

編集 削除
GT-BASS  2009-03-04 11:28:07  No: 33512  IP: 192.*.*.*

> 新参者...
のコメントは違うように思いますが...気を取り直して

(A)の方法で出来ると思います。(質問の意図を私が正しく理解しているのであれば...)
TStringGridにDBの内容以外の列を一つ追加し、その列にTStringGridの行番号を表示すれば良いと思います。
面倒と言えば面倒ですが、諸般の理由より、私はそれまで多用していた(B)の方法をあえて(A)に変更しています。

あとはPrimary Keyの個数を数えるViewを作成し、結合させればできるといった内容がこちらに掲示されていた覚えが有ります。
ttp://groups.yahoo.co.jp/group/Firebird-jp-general/

編集 削除
陽音  2009-03-04 13:38:39  No: 33513  IP: 192.*.*.*

GT-BASS様。 回答有り難うございます。

> (A)の方法で出来ると思います。.....

ハイ、私もユーザーに直接見える作業(画面)ではこちらで同様の処理をしています。 少しでも見栄えを良くする為に、ゴリゴリ記述しています。

表示自体にあまり重点を置かない作業の場合は(B)ですが、チョッと欲が出て
行番号の表示が欲しいな、..と思いました。

> あとはPrimary Keyの個数を数えるViewを作成し、結合させればできるといった内容がこちらに掲示されていた覚えが有ります。
> ttp://groups.yahoo.co.jp/group/Firebird-jp-general/

情報有り難うございました。ゆっくり拝見させて頂きます。
失礼します。

編集 削除
igy  2009-03-04 19:38:52  No: 33514  IP: 192.*.*.*

>レコード行(1,2,3,...n)も一緒に表示
>させることは出来るのでしょうか?。

これ、データの内容ではなく、

>「行番号」的な物が表示

だったのですね。
レコード行って書かれていたので、
データの内容だったら、書かれたSQL文でOKでは?と思って

>で、SQL文を実行して、試したのですか?
>(お望みの結果は、表示できましたか?)

と、書いてしましました。

>この掲示板(Q&A)は、新参物はあまり歓迎されないようなので、
>今回は「解決」とさせて頂きます。

もし、私の書き込みで、そのような印象を持たれたのであれば、
お詫びします。申し訳ありません。

編集 削除