9

データベースで CRUD 操作を行っていますが、データベースでデータ型を取得するための直接的な方法が見つかりませんでしたchar

結果セットの を使用して出力を達成しましたが、 String と Character は2つの異なるデータ型であるため、getString(String column_name)のようなメソッドが存在しないのはなぜでしょうか。getChar(String column_name)

4

4 に答える 4

22

MySQL が見ているように、それStringsは単一の文字の型がないためです。確かに、CHARまたはVARCHARを最大 1 のサイズに設定できますが、これは特殊なケースであり、通常、機能が既に存在する特殊なケースのメソッドを作成する必要はありません。

次のようにchar、結果の からJava を抽出するだけです。String

getString(column_name).charAt(0)
于 2013-06-07T21:17:17.647 に答える
9

リンクを参照し、表 3-1 を参照すると、存在しない理由がよくわかりますgetChar(String column_name)

概要: char のマッピングは String です。getString(String column_name)したがって、charデータ型には存在します

于 2013-06-07T21:10:42.217 に答える
5

これは、MySQL のCharが実際には単一の char 値を意味するのではなく、実際には文字の配列を意味するためです。Java では、文字の配列は文字列として表されるため、同じメソッドになります。

于 2013-06-07T21:11:17.730 に答える
1

多くの場合、データベースにはすべての文字列を表す型が 1 つしかありません。

char は特殊なケースにすぎません: 1 文字の文字列なので、この型を追加してもあまり役に立ちません。

CHAR のような名前に惑わされないでください。:)

于 2013-06-07T21:11:40.463 に答える