
Javaのソース上でSQL文を書くと
読みにくく、書きにくくなってします。
特に表名や、列名などを変数で指定する場合は見苦しくてたまりません。
これぞという綺麗な書き方をご存知ないですか?
以下は自分で試してみた例です。
ex. 一般的?
String tbName = "TestTable" + 1;
String exName = "Who";
String sql =
"INSERT INTO " + tbName + "(" +
" Timestamp," +
" Name) " +
"VALUES(" +
" CURRENT_TIMESTAMP," +
" '" + exName + "');"
ex. 変数置換 無駄な処理はありますが。
String tbName = "TestTable" + 1;
String exName = "Who";
String sql =
"INSERT INTO tbName(" +
" Timestamp," +
" Name) " +
"VALUES(" +
" CURRENT_TIMESTAMP," +
" 'exName');"
sql.replaceAll("tbName", tbName);
sql.replaceAll("exName", exName);
ex.別ファイルファイル読み込み + 変数置換
No.3ベストアンサー
- 回答日時:
No.4
- 回答日時:
個人的な意見としては
SQLを別ファイルにしても良いなら、別ファイル。
PreparedStatementを使って、動的な部分は「?」で別ファイルに記述。
別ファイルにしないでコードに記述するならSQL文はStringではなく、StringBuffer(1.5以降ならStringBuilder?)、余計な「+」が入らないので見易くなる。(と私は思う。)
アドバイスありがとうございます。
やはり、別ファイルにするのが一番すっきりしますね。
PreparedStatementを使って「?」を置換し
Queryは別ファイルにすることにしました。
No.2
- 回答日時:
まぁ好き好きでしょうが、私が書くなら。
(SQLの部分についてのみ)1)予約語(select insert from など)は小文字に統一する。
2)列を複数記述するなど、カンマで区切る際には 列名+カンマ+半角スペース+列名・・・・とする。
select CODE, NAME, BIRTHDAY from KOKYAKU;
のように。
select Code, Name, BirthDay from Kokykaku;
でもいいけど。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語初心者の質問失礼します。
-
分割コンパイルの#defineについて
-
この問題のファイルを読み込ん...
-
CSVファイルへの保存の際、デー...
-
グローバル変数のよくない使い...
-
csvファイルを開かずに文字を検...
-
SGファイルって何ですか?
-
C言語について
-
FileOpen 関数で既にファイル...
-
graph.hない。
-
バイナリーデータをCSV変換して...
-
mmap()を使ったファイルへの書...
-
バッチで118項目のCSVを処理し...
-
XMLのメリット デメリットを教...
-
ハッシュの計算時間について
-
テキストファイルの最終行を削...
-
どんなプログラムを書いても指...
-
コンパイルするときに、ファイ...
-
C言語を用いたファイルの一括削...
-
バッファとは何ですか
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語初心者の質問失礼します。
-
ファイル名の先頭にアンダース...
-
csvファイルを開かずに文字を検...
-
VB.NETによるプロセス間通信
-
営業秘密の漏洩について
-
Thunderbirdでemlファイルを開...
-
ドラッグアンドドロップでファ...
-
CSVファイルへの保存の際、デー...
-
バッチで118項目のCSVを処理し...
-
SGファイルって何ですか?
-
ファイルの結合
-
分割コンパイルの#defineについて
-
VBAにてEXCEL以外のファイル(テ...
-
2つのCSVファイルの比較
-
ShellExecuteEx→WaitForSingleO...
-
VBに、Cのincludeのようなもの...
-
RPGでファイル名(もしくはレコ...
-
マウスポインタの変更
-
Excelマクロでの再読込み方法
-
関数の呼び方について
おすすめ情報