回答(全3件)
回答の評価を上げる
以下のような回答は評価を上げましょう。
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
1
回答の評価を下げる
以下のような回答は評価を下げられます。
- 間違っている回答
- 質問の回答になっていない投稿
- 不快な投稿
評価を下げる際は理由をコメントしてください。
まずString strSQL = ...の直後にブレイクポイント置いてみてstrSQLの値を確認してみる
あと大きなお世話かもしれませんが、プレースホルダを使う等コード内に書くSQL文が簡潔で見やすいものに保つ癖を付けるようにしたほうがいいです
文字列を組み立てるコードを書いていると、とんでもない間違いが潜んでいる時があります
別のところからコピペしてたりであってると思い込んでいてなかなか気づかないことがある
気分を害されたら申し訳ありませんが、SQLインジェクションが散々セキュリティインシデントの話題に登っているのに、未だに文字列を結合してSQL文を生成しているコードを書き続けるのは意識が低い気がします
最近は「意識が高い」のがあんまり好ましくなく揶揄されますが、書くコードの品質は高く保ちたいものです
2015/11/23 03:34 投稿
コメント(2)
2015/11/23 04:10 編集
ご回答ありがとうございます。
SQLインジェクションは、当社先祖代々から、ライブラリがあり、これで確認が取れた後、ちょっと手間ですが、おまじないで、目隠しをする対応予定です。当然、セカンドインジェクションや、まだ公にされていない攻撃方法4パターンへの対応も先祖代々しています。
ただ、それにするとかなり強固なSQLになる反面、ここだけで、色々なデータでの動作確認がしにくいこともあり、まず、SQL上でOKだったので、次の段階として、これでソース上で動作確認したかったのです。その作業が、低レベルとのご指摘、深く受け止め、今後は、確認作業はせずに、直接、一発で書いて、時間の節約をするようにします。ご指摘ありがとうございます。他会社では、確認やテストをしない人もいるよので(その会社は、バグだらけですが)、私も一発音盤で作るようにします。時間の節約をすることもときには、とても大切と当たり前のことをに認識しておりますので(出戻りバグ修正時間とどちらがはやいか?になりますが、私は最初からバグのないものを作りたいという気持ちでいますが、初心者で未熟なにで、ベテランの皆様のご意見に素直に従うことも時には重要と考えます。)。ただ、そうなると、皆さんに、SQL文をご提示して質問ではなく、文章のみの質問となることをお許しくださいませ(以前には、具体的に提示しないとわからない!!、質問の仕方もしらないのか?、質問すべきではないなどと、お叱りを受けました。きちんと、プロフィールに書い絵有るのを読めない人がいるようで悲しいです。)。
ところで、興味がありますのは、
1.未だに文字列を結合してSQL文を生成しているコードを書き続けるのは意識が低い気がします
⇒ 是非、どんな素晴らしい方法でければ、良いのかを知りたいので、具体的なJAVA文を書いてくださいますようお願い致します(おそらく、SQL文ではなく、一旦、JAVAの文章とする最近はやりの方法と考えておりますが、違う可能性もありますので、是非ご提示いただけると勉強になります)。ここをご覧になっている皆様のためにも、ご参考になると考えますので。
お手数ですが、もっともっと、勉強したいとかんげがえておりますので、お願い致します。
2、最近は「意識が高い」のがあんまり好ましくなく揶揄されますが、書くコードの品質は高く保ちたいものです
⇒「「意識が高い」のがあんまり好ましくなく揶揄」を言う方は、初心者の私よりもさらに初心者か、視野や心の狭い方だと考えますし、何をしても、反対派や否定はは必ずいますので、無視するのが宜しいかと。
初心者ですが、技術者は、最善のものを突き詰め、最良の物を作るよう日頃から指示をうけております。
尚、Javaなのに、strSQLとプレシックスを付けているのは、JAVAの道からはずれるとご規定を何度も他のサイトでうけておりますが、そん半面、一番大切なのは、品質。と、ただ、品質を考慮し、可読性のよく、後任者にも、パッとみて、一つも誤解が無く理解できるもの、ということで、常識はずれでお叱りを受けつつも、プリフィックスや、その他、実施しています。品質とは、できたものが100%動けばベストではなく、さらに、将来を考慮したものにすることで、120%の未来分の+20%が上乗せされると、ご指示を頂いた方の影響です。
isset($replyData['Comments']["total_count"]) ? $replyData['Comments']["total_count"] ?>
回答の評価を上げる
以下のような回答は評価を上げましょう。
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
0
回答の評価を下げる
以下のような回答は評価を下げられます。
- 間違っている回答
- 質問の回答になっていない投稿
- 不快な投稿
評価を下げる際は理由をコメントしてください。
DESCとLIMITがくっついていると判定されているからでは?
後ろにも半角スペースを空けてみるとかORDER~200まで1行にまとめてみるとか
2015/11/23 02:45 投稿
コメント(1)
2015/11/23 03:28
ご回答ありがとうございます。
>後ろにも半角スペースを空けてみるとかORDER~200まで1行にまとめてみるとか
両方とも実施済みですが、同じくエラーとなります。
今まで、このようなコーティングは数をこないしているので、
不思議で、且、対策がわからなくて困っています。
isset($replyData['Comments']["total_count"]) ? $replyData['Comments']["total_count"] ?>
回答の評価を上げる
以下のような回答は評価を上げましょう。
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
0
回答の評価を下げる
以下のような回答は評価を下げられます。
- 間違っている回答
- 質問の回答になっていない投稿
- 不快な投稿
評価を下げる際は理由をコメントしてください。
エラーでDESCとLIMITがついて表示されているのでスペースがおかしいのかもです。
'DESCLIMIT 200'
何れにしても、シンタックスエラーと言っているのでSQLが間違っているってことです。
デバッグして実際に実行しているSQLを取得して確認したほうがいいと思います。
2015/11/23 03:01 投稿
コメント(1)
isset($replyData['Comments']["total_count"]) ? $replyData['Comments']["total_count"] ?>
関連した質問
-
解決済
ナップサック問題 アルゴリズム
現在javaを用いて再帰の学習をしています。 再帰がよくわかりません。 具体例として ナップサック問題を解く再帰的なアルゴリズムを教えてください。
-
解決済
PHPのソートの仕方がイマイチ分かりませんので教えてください
スミマセン、phpのソートの仕方を教えて下さい。 ソートしたい配列をprint_rしたものを下に示します。 このなかにある1回戦、2回戦のところを逆順にソートしたいのですが、 ど
-
解決済
【Sliderのデザイン】
windows8.1 ストアアプリを、visualstudio2015、OSはWindows10で開発しております。 画像のような、スライダーを作成したいのですが、 自分の力では
-
受付中
【Android】SoundPoolについて
はじめに、SoundPoolにいくつかの音声を読み込み、その後それらをint[] SoundIDなどでそれぞれのSoundIDを管理して ボタン処理などの人的動作をせずに、ランダ
同じタグがついた質問を見る
- Java
2537questions
Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。 - MySQL
942questions
MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。