サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。
ハッキングを行おうとする者にとって、エラー時に表示される情報は非常に有益です。 例えばDBが出力するエラーが直接表示されている場合、ハッカーに対して攻撃のための大きな手がかりを与えてしまうことになります。 まず、システムが出力するエラー情報をユーザに見せないようにしましょう。エラー発生時は、エラーが発生したことのみを画面に表示し、別途エラーログなどを出力することが懸命です。 その他、HTML内にSQLをコメントで出力したり、公開フォルダ内にエラーログを保管するといったことも避けるべきです。 テーブル名やカラム名など、SQL文を構成する要素をユーザに知られないように、可能な限り情報の隠蔽を心がけることが重要となります。 ユーザが画面からデータを入力でき、その値がSQL文の構成要素になる場合、SQLインジェクションが引き起こされる確率が高くなると言っていいでしょう。 水際対策として、ユーザの入
概要 SQL(Structured Query Language)とは、リレーショナルデータベース(RDB:Relational Database)の管理や操作を行うための問い合わせ言語の一つ。業界標準として広く普及しており、様々なデータベース管理システム(DBMS:Databese Management System)で利用できる。 DBMSへ利用者や外部のソフトウェアから命令を発行するために用いる言語で、データベースへのテーブルの追加や設定変更、削除、テーブル間の関係の定義や削除、テーブルへのデータの追加、更新、削除、データベースやシステムの設定変更などを行うための命令語と構文、文法などを定めている。 主なSQL文データを操作する命令文としては、テーブルや制約条件などの定義を行うCREATE文、削除を行うDROP文、設定変更を行うALTER文、テーブルにレコードを挿入するINSERT
2 SQL演算子 この章では、Oracle Database LiteのSQL演算子を説明します。この章の内容は次のとおりです。 2.1「SQL演算子の概要」 2.2「算術演算子」 2.3「文字演算子」 2.4「比較演算子」 2.5「論理演算子」 2.6「集合演算子」 2.7「その他の演算子」 2.1 SQL演算子の概要 演算子は、個々のデータ項目を操作して、結果を返します。データ項目は、「オペランド」または「引数」と呼ばれます。演算子は、特殊文字またはキーワードで表されます。たとえば、乗算演算子は、アスタリスク(*)で表され、NULLかどうかをテストする演算子は、キーワードIS NULLで表されます。演算子には、単項演算子とバイナリ演算子の2つの一般クラスがあります。Oracle Database Lite SQLは、集合演算子もサポートします。
概要 バインド変数(bind variables)とは、プログラミング言語の実行環境からデータベース管理システム(DBMS)へSQL文を発行する際、一部を動的に変更できる変数にする機能のこと。その部分に後から代入や変更を行ってもSQL文の再生成や解釈をし直す必要がなく、高速に実行することができる。 データベースを参照・操作するプログラムでは、実行時にSQL文を生成してDMBSへ渡すことでデータベースへの問い合わせや内容の操作を依頼することができる。 このとき、SQL文の一部にプログラム中で扱う変数や入出力値などの内容を埋め込んで渡すことが頻繁に起きるが、文自体はほとんど同じなのにパラメータの一部が異なるだけで毎回異なるSQL文を生成してDBMSに解釈・実行させるのは効率が悪い。 そのような場合に、DBMSがバインド変数に対応していれば、プログラム側からDBMS側に「このSQL文のこの部分の
15.1. インデックスとは インデックスとは、データの検索速度を向上させるために、どの行がどこにあるかを示した索引のことです。データを検索するときに、目的のデータが見つかるまですべての行を一行ずつ調べていくよりも、索引を利用して目的の行の場所を見つけてからその行のデータを読み取る方が効率的だという考えにより、非常によく用いられる方法です。 特に大きなテーブルでは、インデックスを用いることにより、大幅にそのパフォーマンスが改善されます。 15.2. インデックスの基本構文 インデックスの概念について SQL92 では定義されていません。ここでは ORACLE と PostgreSQL について説明します。 インデックスを定義するには、CREATE INDEX 文を使用します。基本構文は次の通りです。 <<ORACLE>> CREATE [UNIQUE] INDEX インデックス名 ON テ
テーブルのJOINが苦手でしたが、この例を思いついてからは、すっきりくっきり理解できるようになりました。むしろ頭から離れません……。 ※ INNER、OUTERは飾り。省略できる。 INNER JOIN → JOIN LEFT OUTER JOIN → LEFT JOIN RIGHT OUTER JOIN → RIGHT JOIN ※ ON ...=... をまとめて USING(属性) と書ける。 ※ 何で結合するか言うまでもない時は、NATURALを指定すると勝手にJOINしてくれる。NATURALにJOINして……。 ※ WHEREは結合した結果に作用する。 ※ 現実には上図のように1対1で結合しません。 ※ おまけ。CROSS JOIN。 こんなの使いません。 ブクマ用画像。
お問い合わせフォーム、登録フォーム、キャンペーンの申込フォーム。 Webにはいろいろなフォームがある。 Webプログラマーであれば誰もが一度は作ったことがあると思う。 新人プログラマーの初めての実務がフォームであることも多いだろう。 新人が作っているというのにもかかわらず、技術的にも面白い部分がないせいか、正しい知識のある人がレビューすることが少ないと思われる。 単純さゆえにテストが不足しているということもあるかもしれない。 上記の理由は憶測にすぎないが、杜撰なフォームがたくさん出回っているのは事実だ。 もう、CAPTCHAの話とか以前の問題だ。 よく見かける悪い例を簡単にあげておく。新人が初めての実務に当たるときにこれを気にしてくれれば、世の中のフォームがだいぶ良くなると思う。 1. クライアントサイド(JavaScript)でのチェックのみ。 2. 選択肢式の入力欄に対するチェックの漏
ここでは、リレーショナル型データベースを操作するために必須となる世界標準言語 SQL について、基礎から応用まで詳しく説明しています。 また、SQL のみにとどまらず、リレーショナルデータベースマネージメントシステム (RDBMS) の持つ様々な機能について詳しく説明しています。 最後には、データベースの設計に関する非常に重要な考え方についても触れていますので、これらを全て学習すると、データベースの操作から設計まで幅広い知識を身につけることができるでしょう。 SQL INDEX 1. データベースの概要 1.1. データベースとは 1.2. データベースシステムの特徴 1.3. データベースとファイルの違い 1.4. 代表的なデータモデル 1.5. リレーショナル型データベース 1.6. まとめ 2. SQL 2.1. SQL の歴史 2.2. SQL とは 2.3. SQL の機能 2.
OSC 2010 北海道の発表で使用したスライド資料「PHPで大規模ブラウザゲームを開発してわかったこと」 Tweet 2010/6/28 月曜日 matsui Posted in PHP, お知らせ | 7 Comments » 先日6月26日、札幌で「オープンソースカンファレンス2010 北海道」が行われ、無事終了することができました。 当日は来場者数が過去最高の約450名となり、閉会式は会場に収まりきらないくらいの大盛況でした。 ご来場者の方々、スタッフ・事務局の方々、本当にありがとうございました。 私も1コマセミナー枠を戴くことができまして、弊社で「ブラウザ三国志」というゲームのプログラム開発を行った際の苦労やノウハウなどをまとめた、「PHPで大規模ブラウザゲームを開発してわかったこと」という発表を行わせていただきました。 お越しいただけなかった方のためにも、その際に使用したスライ
読んでいたコードで面白いテクニックを使っていたのでメモ。 Rails のActiveRecord のfind 系メソッドは優秀だと思うけど、自分でSQL を書きたい時があると思います。そこで、find_by_sql を使うわけですが、その際、大規模なSQL を書く場合のTips です。 環境 ruby 1.8.7 rails 2.2.2 パラメータによってSQL 自体を変えたい場合 例えば、SQL が以下だったとします。 RDBMS はSQLite3 SELECT * from users where name = xxx; これを扱う、find_by_sql が以下のような感じ。 User.find_by_sql(["select * from users where name = :name", {:name => 'bob'}]) #=> [#<User id: 1, name: "
Visual Basic 中学校 > データベース講座 > 第10回 テーブルの結合 SQLの中で、複数のテーブルを結合してあたかも1つのテーブルであるかのように扱う基本的な手法を説明します。 概要 ・JOINを使用すると複数のテーブルを結合して、1つのテーブルであるかのように扱うことができる。結合はレコード単位で行われ、どのレコードとどのレコードを結合させるかはSQL文中で指定する。 例:以下の例ではT_動物マスタとT_目マスタで、目IDが等しいレコード同士を結合して、あたかも1つのテーブルであるかのようにFROM句に指定する。 SELECT T_動物マスタ.名前, T_目マスタ.目名 FROM T_動物マスタ LEFT JOIN T_目マスタ ON T_動物マスタ.目ID = T_目マスタ.目ID ・JOINにはいくつかの種類があり、結合相手のレコードがいない場合の結果が変わる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く