タグ

sqlに関するthreeMonthsのブックマーク (26)

  • SQLの暗黙の型変換はワナがいっぱい

    補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブはてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2009年9月24日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり このエントリでは、SQLにおいて「暗黙の型変換」を使うべきでない理由として、具体的な「ワナ」をいくつか紹介します。 数値項目に対するSQLインジェクション対策のまとめにて説明したように、RDBの数値型の列に対してSQLインジェクション対策をする方法として、以下の三種類が知られています。 バインド機構を用いる パラメータの数値としての妥当性確認を行う パラメータを文字列リテラルとしてエスケープする このうち、方法3を使うべきでない説明の補足です。具体的には、方法3には、「暗黙の型変換」が発生しますが、それが思わ

  • 基礎から理解するデータベースのしくみ(5):ITpro

    SQL文を実行する際のパフォーマンスに大きな影響を及ぼすものとして,もう一つ,インデックスがあります。インデックスについては,どう定義すべきかというデータベース設計上の問題と,インデックスを有効に使うためのSQL文をどう書くべきかというコーディング上の問題があります。 ここではテーブル設計上の問題を主に取り上げます。SQL文のコーディングについては囲み記事「SQL文を最速にする11のポイント」を参照してください。 インデックスは,テーブルの検索速度を向上させるためのものです。それぞれのSQL文に対して最適なインデックスを定義するのが理想的ですが,実際にはある程度限られたインデックスで,必要なパフォーマンス要件を満たすようにインデックスを定義する必要があります。加えて,どんなSQL文が実際に発行されるのかがあらかじめわかっていない場合は,適当な想定に基づいてインデックスを定義しておかなくては

    基礎から理解するデータベースのしくみ(5):ITpro
  • ORA_HASH - オラクル・Oracle SQL 関数リファレンス

    ORA_HASH ファンクション(ハッシュ値の取得) ハッシュ値への変換 ( ORA_HASH ) 書式 ORA_HASH(expr [,max_bucket, seed_value] ) max_bucket デフォルト値:4294967295 seed_value デフォルト値:0 ハッシュコードを計算する。(バケット数とシードが一緒であれば、同じ expr は同じハッシュ値を戻す) そのためパスワードをハッシュに変換した形で格納する場合などに使用できる。(※) (※) テキストで保持するよりは良い程度なので STANDARD_HASH や 暗号化ツールキット の 鍵付きハッシュ HMAC(DBMS_CRYPTO) などのハッシュ値の方が安全性は高い。 暗号化ツールキットは Standard Edition でも使うことができ Advance Security Option ライセンス

  • SQLをより賢く使うための12のヒント - builder by ZDNet Japan

    あなたのユーザーはSQLについてまったく知らないかも知れないが、その価値についてはしっている可能性が高い。SQLはあらゆる場所で使われており、学ぶのも簡単で、SQLを使ったソリューションは実装も簡単だ。SQLをあまり使わないにしろ、よく使うにしろ、SQLを賢く使えば、エラーを避け、性能を向上させることができる。 多くのSQLは各ベンダー独自の仕様を持っている。以下で紹介するヒントはJetとTransact-SQLで使えるものだが、ほとんどのSQL製品はこれに似ている。 1: AccessのSQLウィンドウでJet SQLを利用する Accessユーザーは、クエリを作成するたびにSQLステートメントを作成している。ただ、彼らがそれを知らないだけだ。彼らが使っているクエリデザインウィンドウは、実際にはSQLを視覚的に表現したものだ。ほとんどのユーザーは、自分が必要とする適切なSQLステートメン

    SQLをより賢く使うための12のヒント - builder by ZDNet Japan
  • RasComputerWeb-Reference⇒SQL入門

    SQL初心者の方ようこそ! そうでないかたも ぜひぜひ見てってね。 SQL作成は ちょっとしたコツが つかめれば 意外と、簡単簡単! 例題を見ながら 進めていきましょう! このSQL文例集は、 Oracleデータベース用の SQL例を記述しています。 ほかのデータベースを お使いのかたも 基的なことを 覚えていだだけるので ぜひ、ご覧下さい! 掲載されている会社名および製品名は、各社の商標または登録商標です。 Copyright 1998-2011 RASComputerCorp. All Rights Reserved.

  • 上流の技術者はSQLを高いレベルで習得すべき:ベンチャー社長で技術者で:エンジニアライフ

    株式会社ジーワンシステムの代表取締役。 新しいものを生み出して世の中をあっといわせたい。イノベーションってやつ起こせたらいいな。 まともな議論になっています。炎上というのはコメントをつけてくれた方々に失礼かもしれませんが、何回も炎上してきたし、何回も同じことを書いてきたし、それどころか10年言い続けてるし……。 がしかし、この業界のお客様から、このようにご意見を頂戴した(わたしが猛烈に望んでいたコメントなんですけど自作自演じゃないからね)。 http://el.jibun.atmarkit.co.jp/g1sys/2009/06/vb6-8111.html#comment-24715757 そこで、以前からの蒸し返しですが、「上流の技術者はSQLを高いレベルで習得すべき」と改めて一度、声を大にして言いたい。 その前に余談ですが、VB6と.NET(とSQL)について。 どっかでコメントしまし

    上流の技術者はSQLを高いレベルで習得すべき:ベンチャー社長で技術者で:エンジニアライフ