ResultSet

JDBCということで、ResultSetについて。SELECTした結果を素直にJavaの世界に持ってくるならばResultSetという名前はいいと思うんだけど、現実的にはResultListとか、ResultTableのほうがいいんじゃないかな。
なぜなら、Setセットとして扱うような処理はSQLでやってしまうべきだと考えるから*1
こうすることで混乱する人もいるかもしれないけど、JavaSQLの言語自体の性質の違いがはっきりしていいんじゃないかなぁ*2


あれ?今ふと思ったんだけど、ResultSetのメソッドを見てると、SetというよりIteratorイテレータだよなぁ。どっちにしてもResultSetはない気がする。

public interface ResultTable extends List<List<SqlType>> {
}

みたいな感じかな。適当だけど。

*1:ORDER BYしたらもうListリストでしょ

*2:ただ、こうするとJava側からはSQLが集合指向な言語であることが全く分からなくなるから、ちゃんとSQLを学ばないとSQLを手続き的に使ってしまうような人が増えてしまう?