Java で準備されたステートメントを使用して、以下の SQL テーブルを更新するための最適なコーディング パターンを探しています。
SQL テーブル名は table1 であり、attr1、att2、att3、att4、attr5 および .... が table1 にあります。
現在、私の疑似
If (want to update att1 only) {
PreparedStatement pst = Connection.prepareStatement("UPDATE table1 SET attr1 = ?");
} else if (want to update attr1 & attr2 only) {
PreparedStatement pst = Connection.prepareStatement("UPDATE table1 SET attr1 = ?, attr2 = ?");
} else if (want to update attr1 & attr2 & attr3) {
PreparedStatement pst = Connection.prepareStatement("UPDATE table1 SET attr1 = ?, attr2 = ?, attr3 = ?");
} else if (want to udpate attr1 & attr3) {
PreparedStatement pst = Connection.prepareStatement("UPDATE table1 SET attr1 = ?, attr3 = ?");
} ......
.... else {
Bad Request
}
この上記のコードは、WHERE SQL 条件をより複雑にします。ここでの if - else if - else パターンは好きではありません。維持するのが非常に難しいからです。
はい、他のオプションが動的に UPDATE SQL クエリを生成し、ORM ソリューションを使用することを知っています。SQL UPDATE クエリ ロジックを動的に生成すると、複雑になると思います。
ここに最適な他のパターンまたはソリューションを提供してください。