メモ TOP 句には、式も渡せるのでサブクエリも使える TOP (Transact-SQL) 行数を増やすには、単純な連番テーブルと必要な数だけマッチする条件で結合したらよい。 単純な連番テーブルは、CTE で作成 今回の例では、元のデータをあるカラムに入っている値の数だけ増加させるという例 use [TEST] CREATE TABLE [テスト] ( [Id] int identity(1, 1) primary key, [名前] nvarchar(30), [分割件数] int not null ) GO INSERT INTO [テスト] ( [名前], [分割件数] ) VALUES ('10個に増やす', 10), ('5個に増やす', 5), ('1個のまま', 1), ('3個に増やす', 3) GO SELECT * FROM [テスト] GO WITH [CTE](行
SQLのプログラミングは奥が深い。特にパフォーマンスの観点から、そう言えるだろう。 みなさんご承知の通り、同じ結果を出すプログラムでも、SQLの書き方次第で処理時間に何倍もの差が生じ得る。効率の悪いSQLを書いてしまう原因は、多くの場合、リレーショナルデータベースの内部動作やアプリケーションに関する理解不足である。両者をよく知った上で最適なSQLを書けるようになることは、システムエンジニアとしての重要なスキルの一つである。 特集『基礎から理解するデータベースのしくみ』では、リレーショナルデータベースの内部動作について、基本的な部分を分かりやすく解説している。SQLプログラミングに役立つことはもちろん、SQLチューニングやデータベース設計のための基礎知識としても不可欠だ。 イントロダクション ブラックボックスのままでいいの? Part 1:SQL文はどのように実行されるのか SQL実行までの
データベース用のどこにでも転がっていそうなシンプルなユーティリティ、Part2。全面的につくり直しました(Part1もありました、一年前に公開してます、が、正直イマイチだった!)。 DbExecutor - Simple and Lightweight Database Executor NuGet - DbExecutor 何でこの時期に?というと、睨んでいるのはWP7にSQLCEが乗るという話、です。まあ、Linq to Hogeが積まれるようなので、イラネーだろという話はあるのですが!あるのですが、それでも生SQLを使わざるを得ないシチュエーションは出てくるはずで、そのために、今のうちに作っておく/作りなおしておこうかと。まだWP7でどういう形で載るのか分からないので、今は普通に.NET 4 Client Profile用です。WP7へはSDKが出次第、すぐに対応させるつもり。 さて
「安全なSQLの呼び出し方」というSQLのセキュリティに焦点を当てたドキュメントが、2010年3月にIPA(独立行政法人情報処理推進機構)から公開された。 これは2006年1月から提供されている、Webサイト開発者や運営者向けのセキュアWebサイト構築のための資料「安全なウェブサイトの作り方」の別冊として書かれたものである。「安全なウェブサイトの作り方」が92ページなのに対して、SQLインジェクションについてだけで40ページもの分量がある。なぜこんなに分厚いのだろうか。 このドキュメント作成に協力したという、独立行政法人産業技術総合研究所 情報セキュリティ研究センターの高木浩光氏にお話を伺うことができた。高木氏は個人ブログ「高木浩光@自宅の日記」で、セキュリティ関連の問題を追求する論客としても知られている。筆者も以前、この連載の「今夜わかるSQLインジェクション対策」の回(2006年11月
システム性能の重要な位置を占めるデータベースのパフォーマンス ソフトウエアが大規模化、複雑化していく中で、システムのパフォーマンス問題にかかわるトラブルの話を多く耳にします。「安定稼働していたシステムが突然遅くなった」「テスト段階では問題がなかったのに、本稼働で思ったようなパフォーマンスが出ない」「新しい環境に移行したら途端に性能が出なくなった」など。 これらの症状には、さまざまな原因が考えられます。実際には、複合的にいろいろな要素が絡み合っていることが多く、一概に「ここが悪い」と指摘することはできません。 しかし、多くのシステムでデータベースにかかわるパフォーマンス問題が発生しているのは事実であり、しかも、その性能劣化が、指数関数的に拡大していることが多いことを見逃すことはできません。データベースにかかわるパフォーマンス問題は、ハードウエアパフォーマンス、ネットワークパフォーマンス、DB
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く