0

この公式ドキュメントを読む:

クエリで明示的に名前が付けられていない列については、列番号を使用することをお勧めします。列名を使用する場合、プログラマーはそれらが目的の列を一意に参照することを保証するように注意する必要があります。これは、SQL AS 句で保証できます。

クエリで明示的に名前が付けられていない列は何ですか? 彼らはそれでどういう意味ですか?

ありがとう、

確かにそれは

4

3 に答える 3

1

計算された列/式には任意の名前が付いています。

select max(salary) from employee

JDBC 列名を調べると、通常は式と同じように呼ばれます。つまり、行セットでは、列は文字どおり「max(salary)」と呼ばれる場合がありますが、これはデータベース固有であり、信頼できません。

次の 2 つの選択肢があります。

  1. 列番号 (1 から始まる) を使用します。rowset.get(1)
  2. クエリの列に名前を付けます。

いえ

select max(salary) as max_salary from employee

私は 2 番目のオプションを好みます。これは、脆弱性がはるかに少なく、理解しやすいためです。

于 2013-09-22T06:59:16.840 に答える
0

クエリで明示的に名前が付けられていない のは、列のような列count(*)または関数の結果のようなものです。lower()

于 2013-09-22T07:01:50.173 に答える
0

あなたが持っている場合

 select count(*) from employees // query 1

今はそうしないと使えrs.getString(columnLabel)ない

従業員からの合計数として count(*) を選択します

 rs.getString("total Number") unless you do

したがって、使用するのは理にかなっています

  getString(int columnIndex) with query 1 instead of rs.getString(columnLabel)

上記の例では、以下の文は完全に理にかなっています

クエリで明示的に名前が付けられていない列については、列番号を使用することをお勧めします。列名を使用する場合、プログラマーはそれらが目的の列を一意に参照することを保証するように注意する必要があります。これは、SQL AS 句で保証できます。

于 2013-09-22T07:03:08.933 に答える