SQLインジェクション

SQLを文字列から組み立て、かつユーザーが入力させる値を途中で組み込むときは、SQLインジェクション攻撃に気をつけましょうというもの。

リーダブルパスワード

パスワードを平文のままデータベースに保管してはいけませんよ、という内容。

インプリシットカラム

ワイルドカードを使ったSQL文は避けろというもの。属性を加えるとエラーになったり、ワイルドカードですべての列を取得するのはパフォーマンスに影響するから、だめだよ。という。列名を明示的に指定しましょう。ということ。 確かに、使う必要のある列のみ…

スパゲッティクエリ

スパゲッティな複雑なクエリを書くと、意図しない結果を出したり、デバッグも難しくなったりするというもの。 解決策としては分割統治を行うべきだということで以下の解決策を出している ワンステップずつ SQLを分割し、ワンステップずつ処理すべき UNIONを…

プアマンズサーチエンジン

全文検索をSQLでやろうとして、LIKE演算子や正規表現で検索しようとすること。インデックスなどが使えないため遅い。全文検索エンジンを使いましょうというもの。 たしかにそのとおりですね。日本語の場合は単語境界をとるのが難しいのと、送り仮名など表現…

ランダムセレクション

ランダムにデータを抽出する際にorder by rand()を使うと、件数が多くなると遅いよ、というアンチパターン。MySQLを使ったこともなければ、ランダムにデータを取り出すという要求もないので、知らなかったが、要は並び替えを常に行うので、遅いらしい。 で、…

アンビギュアスグループ

最大値や最小値が得られた値について、その最大値をもつタプル(行)の別の属性(列)を取得したいとした時に、group by句に含まれない属性をselectの属性に含めてしまうというもの。 ほとんどのRDBMSではエラーになるが、MySQLとSQLiteはエラーにならないと…

フィア・オブ・ジ・アンノウン

NULLの振る舞いについて。本書ではNULLを使うことがアンチパターンでなく、一般の値としてNULLを使うことが良くないと述べている。 とくに、すべての項目にNOT NULLを使うように強制するのはよくないという。欠けている値を表現するには、何かの値を「欠けて…

インデックスショットガン

インデックスの性質を理解して、闇雲にインデックスを作成したり、逆に全く設定しないということのないように、というもの。そりゃそうだ。 ただ、解決策に示されているのは、すでに運用中のデータベースに対するパフォーマンス改善としてのインデックスの作…

SQLアンチパターン6

論理設計は議論すべき点が多いと思うが、物理設計以降になってくるとその通りとしか言えないものも増えてくる。

ファントムファイル

画像データなどをデータベースに格納せず、格納先のみを保存して、画像データなどを外部に保存するのは以下の様な問題がある、という指摘。 データベース上のファイルを削除しても外部ファイルは自動的に消えないという問題。 トランザクション分離がサポー…

サーティワンフレーバー

IN句をつかったCHECK制約だけで列の値を制限するやり方には問題がありますよ。という指摘。プログラムで言うところの列挙型(ENUM)のようなもの。MySQLでも同様の機能があるようだ。 問題点は以下のとおり。 許可されている値の一覧がわからない。CHECK制約…

ラウンディングエラー

小数を格納するのにFLOATやDOUBLE, REALなどを使ってしまい、誤差がでてしまうというもの。金額の計算などにはNUMERICやDECIMALを使いましょう。はい。そのとおりですね。

メタデータトリブル

顧客テーブルの属性に毎年、集計データの列を追加するという、ちょっと悪夢のような設計が紹介されていた。テーブルのタブル(行)の長さが変わるというのは運用上、物理的な格納効率を悪化させることがある。また、列が追加されるということは、SQLを実行す…

マルチカラムアトリビュート

ジェイウォークのように繰返し項目をテーブルを分割せずに対応する方法の一つ。ジェイウォークは区切り文字を使って一つの属性に押し込めていたが、このパターンでは繰返し項目を単に番号をつけて列を分割する。 例えば、住所録に電話番号を複数格納する必要…

ポリモーフィック関連

ある参照整合性制約を設定しているテーブルがあったときに、そのテーブルに対し別のテーブルの主キーに依存する参照整合性制約を設定したいときにはどうすればよいか?というもの。 このときに、別の項目にどのテーブルとの制約かという属性と、外部キーを一…

EAV(エンティティ・アトリビュート・バリュー)

テーブル設計の変更が起きると、それを使用するプログラムに大きな影響を与えることから、出来る限りテーブル設計の変更を避けようという意識が働く事が多い。よって、柔軟な設計にするため、より抽象度の高いテーブルを設計しようとする。ただそのデメリッ…

SQLアンチパターン3

SQLアンチパターンの感想の続きです。ゴールデンウィーク中にどこまでいけるだろう。

キーレスエントリ(外部キー嫌い)

「参照整合性制約を設定しない。」という設計指針に対するアンチパターン。比較的このような設計をしているところを多く見る。 そもそも参照整合性制約を設定しないということは、ERモデルも記述する必要がない。テーブル定義はすべてExcelで定義すればよい*…

IDリクワイアド(とりあえずID)

すべてのテーブルの主キーをidという名前の属性(列)にし、ドメインを整数にしてしまうというもの。これを擬似キーともよび、本来のキーを自然なキーとよぶ。Railsなどのフレームワークなどが採用している設計指針に対する反論ともいうべきだろうか。本書で…

SQLアンチパターン2

SQLアンチパターンの感想の続き。

ナイーブツリー(素朴な木)

木構造を隣接リストで表現すると、n階層の検索をすることができなくなったり、ノード全体を削除するのが複雑になるという主張である。隣接リストとは、親への参照を作成するだけである。自分自身と親への参照を持っているに過ぎない設計なので、ある非葉ノー…

ジェイウォーク(信号無視)

ひとつの属性に複数の値を入れてしまうというもの。例えば、一人の社員が複数の部署に属するからといって、社員のテーブルの部署という項目にカンマ区切りで属する部署を入れてしまうといった設計である。問い合わせが難しくなったり、参照整合性制約が設定…

SQLアンチパターン1

SQLアンチパターンを読んだ感想を書きたいと思う。全体の感想は別として、まず各論のパターンについての感想を書く。SQLアンチパターン作者: Bill Karwin,和田卓人,和田省二,児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型本購…

日本へ

ヒューストン空港でしばらく待つ。空港内のwifiはあるのだが、有料になっている。調べているとskype wifiなるものがあったので、使ってみたら、あっという間に、数百円がぶっ飛び、終了。うーむ。 成田空港行きでは係員の人も日本語がOKのようで、緊張がほぐ…

ブエノスアイレス観光

朝はゆっくり。お昼から簡単な観光。レコレータ墓地で富裕層の家のような墓地を見学。 歴史的な建造物だが、なんと小学校らしい。 墓地にいたねこ。日本と変わらない。 エビータのお墓。国際女性デーとのことで、花が飾られていた。 元倉庫街のCABANA VILLEG…

飛行機が遅れる

ウシュアイアで午前中はお買い物タイム。マテ茶セットと、押し花の絵を購入。その後、歩いて刑務所博物館へ。北海道の網走と同じで、僻地に受刑者を送り込み、強制労働させて開発を行う。それくらい、誰も行きたがらないような環境の厳しいところだった。 刑…

ビーグル水道クルーズ

ウシュアイアの観光の日。長かった旅行もこの日が実質的な最終日となる。ウシュアイアは南極大陸まであと1000Kmしかなく、南極大陸を除くと最も南にあるといえる。ホテルを出発し、ウシュアイアの港へ。港には南極へ向かうクルーズ船が停泊していた。 前…

ウシュアイアへ

この日も、移動日。陸路でフエゴ島との距離が最も近い海峡の港まで移動し、フェリーでフエゴ島へ上陸した。しばらく走行して、アルゼンチンとの国境へ。チリ国境はかなりシビアなのだが、アルゼンチンはそれと比べると比較的やさしい。BMWのバイクツアーの人…

ペンギンコロニー

基本的に移動の日。陸路でプンタアレナスへ。途中にあるペンギンコロニーへ立ち寄る。この時期はすでに子離れが進んでいるため、巣にはあまりおらず、砂浜のペンギンを観察する。ただ、巣にいたペンギンもいて、人を怖がる様子もなく、アップで写真を撮影し…

パイネ国立公園

朝に起きると、朝焼けと虹が出ていた。よく見ると二重の虹だ。今日も何とか天気が持ちそう。 食堂からの景色。一枚の絵のようですね。 二重の虹が見えています 普段はこんな感じ 宿の近くの高台からの写真。川が湾曲しており、そのなかにバンガローなどがみ…

チリへ

早朝に起床し、日の出でフィッツロイが赤くなる様を見に行く。ただし、肉離れの影響でコンドル展望台へ行くのはやめ、麓で見ることに。写真をとったが、デジカメはいくらでも、色を綺麗にしてくれるので、本当の色よりも綺麗になってしまう。 赤くなっていく…

エル・チャルテンへ

カラファテからエル・チャルテンへ。エル・チャルテンの記念撮影の時に、名前を呼ばれて走った際に、肉離れを起こしてしまう。やや歩くのが辛いくらいだったので、ハイキングを諦めたのだが、しばらく歩いていると、行けそうな感じがしたので、歩いたら、セ…

ペリト・モレノ氷河

カラファテからペリノ・モレノ氷河へ。1日、ほとんど氷河付近ですごす。第1展望台で見た後、周遊船で近くまでより、昼食後、その他の展望台をすべて回る。大崩落を目にすることができなかったが、普通の崩落は何度も経験できた。まず、煙が上がったと思う…

パタゴニアへ

本当は、朝出発だったが、カラファテへの便の出発が予め遅れることがわかっていたため、ブエノスアイレスを観光することに。エル・アテネオ・グランド・スプレンディッド書店という、元劇場を書店にしたところで、CDを購入し、サンマルティン広場とアルゼン…

アルゼンチンへ

ボリビアを出国して、アルゼンチンのブエノスアイレスへ。ボリビアの荷物チェックは手荷物をオープンチェックするなど、厳しい。ここでもかなりチェックされる。 サンタ・クルスのホテル。リゾートホテルなのだが、飛行機の遅れの関係で、夜遅くついて、朝早…

スクレ観光

天候の悪化で飛行機が遅れ、次の目的地、サンタクルスには深夜になるという。スクレで時間を潰すため、マーケットを歩いて珍しい食べ物を食べたり、同行者の方たちの服のショッピングなどに付き合う。朝は天気が悪かったが、観光する頃には天気が良くなる。 …

スクレへ

早朝に起床し、塩湖に向かう。別のツアーに参加しているという日本人の若者がすでに来ていた。雨が降っていたのがすっかり上がって、とても綺麗に反射していたのだが、逆に晴れすぎて雲がなく、真っ青に反射するだけになってしまった。なかなか難しい。 朝は…

ウユニ塩湖

引き続き天気がよい。早朝、ホテルの2階から写真を写す。やはり標高が高いせいか、朝のうちは頭痛がする。 まず、現地人の遺跡へ向かう。いったい、どうやって水を手に入れていたのだろう。むかしむかしは水があったのかもしれない。今は雨季なので多少は水…

ウユニへ

バスと4wdでウユニ塩湖に向かう。バスは途中のオルロという町まで。荒涼としたステップ地帯を行く。山はあるが、木が殆ど無い。ガイドさんのボリビアの政治的な話を聞きつつ、ランチボックスを食べて移動する。ランチボックスの中に入っていたチキンライス(…

ボリビア入国

朝食に行くと、なんと、日本人と中国人だらけ。東洋系以外の人は数えるほどしかいない。お客の数にスタッフが足りていない。リマの空港へ出発すると、空港は昨日と違って人だらけ。LAN航空でボリビアの首都ラパスへ。ほとんどは現地客のようで、さっきの東洋…

はじめての国際線

成田エクスプレスで移動。少し早くついたので、空港内の無印良品でスーツケース用の鍵を購入する。集合場所に移動したが、どこに集まるのかがわからず、しばらくさまよう。同じタグが付いた人に話しかけて、ようやく場所がわかる。添乗員さんいわく、自分で…

PMBOK入門

新版 プロジェクトマネジメント標準 PMBOK入門作者: 広兼修出版社/メーカー: オーム社発売日: 2010/01/26メディア: 単行本(ソフトカバー)購入: 6人 クリック: 23回この商品を含むブログ (10件) を見るPMBOKについて学んでおきたかったので、購入した。 PMB…

懇親会

最後に懇親会があるというのも楽しかった。まさか名刺がなくなるとは思わなかった。

ファシリテーター

各グループにファシリテーターを置く、というのもとても面白い方法だと思う。ただ、ファシリテーターはあくまでも議論を活発化させることがその役割であって、結論を出す人ではない。しかし、時間の関係もあって、なかなかうまくいかなかったかもしれない。

中小企業白書の説明

更新研修にはつきものの眠いお決まりの講義なのだが、講師の堀切研一さんの工夫で、とても楽しい講義だった。まず、白書などに関する設問に各自が答え、それをグループで答え合わせし、グループの回答というものを作る。それを集計して、設問ごとに代表的な…

事業計画書作成のノウハウ

元ネイリストの中小企業診断士である渡辺まどかさんが講師になり、事業計画書とは?のような話から資金繰り表というところまでかなり広い内容を説明していただいた。 まず、そもそも講師の先生の自己紹介から、その戦略があまりにも正しいことに感心する。「…

理論更新研修

中小企業診断士は5年毎に更新を行う必要がある。この要件には理論更新研修を受講するというものがあり、ほぼ毎年1回の受講が必要となる。中小企業診断協会で受ける方法もあるが、割とすぐに埋まるので、「あきない総合研究所」の理論政策更新研修に参加し…

ペンだけで30日後に行列を作るすごい裏ワザ

ペンだけで30日後に行列をつくるすごい裏ワザ作者: 山岸二郎出版社/メーカー: インデックス・コミュニケーションズ発売日: 2007/08/22メディア: 単行本(ソフトカバー)購入: 6人 クリック: 22回この商品を含むブログ (6件) を見るタイトルだけをみると、怪…

レバレッジリーディング

レバレッジ・リーディング作者: 本田直之出版社/メーカー: 東洋経済新報社発売日: 2013/05/02メディア: Kindle版購入: 2人 クリック: 3回この商品を含むブログ (6件) を見るこの本はすべての読書をする人にとって有効な指針を与えてくれるものではない。ビジ…