読者です 読者をやめる 読者になる 読者になる

No Programming, No Life

新しいNPNLです。http://d.hatena.ne.jp/fumokmm/ から引っ越してきました。

テーブル定義情報を取得してくるSQL for Oracle

Oracleでテーブル定義情報を取得してくるSQLを書いたのでメモ。 SELECT T.TABLE_NAME AS "テーブル物理名", TC.COMMENTS AS "テーブル論理名", C.COLUMN_ID AS "カラムID", CASE WHEN PK.COLUMN_POSITION IS NOT NULL THEN PK.COLUMN_POSITION ELSE NULL END…

Groovyでデータベース操作(GroovySQL)

GinAのデータベースの章*1に書かれていることをまとめておこうと思う。 ここに書かれている内容はSQLをある程度理解している方を対象としています。また、JavaでDB操作を行ったことがあると理解が早まります。 DBに接続 まずは、JDBCドライバを使ってDBに接…

SQLインジェクションのまとめ

ケース1 SQLインジェクション攻撃による不正ログイン 〜シングルクォート挿入〜 まずは、SQLインジェクションの最も基本的な攻撃パターンであるシングルクォート「'」を使った手法のご紹介から。 攻撃手法 以下のようなテーブルがあるとする。 [テーブル名…

LIKE文のキーワードのエスケープ

SQL

コードにアンダーバー '_' が含まれるものをLIKEで検索したい場合、LIKE文の中ではアンダーバーはワイルドカード(任意の一文字)として扱われてしまうため、エスケープが必要。 >>ちなみに、LIKE文の説明はここいらが詳しい。 アンダーバーで始まるコードを…