<feed version="0.3" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns="http://purl.org/atom/ns#" xml:lang="ja-JP"><title>おがわみつぎの SQL Server な BLOG</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/" /><tagline type="text/html">雑多な日々</tagline><id>http://blogs.sqlpassj.org/mitsugi/</id><author><name>おがわみつぎ</name><url>http://blogs.sqlpassj.org/mitsugi/</url></author><generator url="http://scottwater.com/blog" version=".Text Version 0.95.2004.102">.Text</generator><modified>2008-05-17T01:44:34Z</modified><entry><title>[Event]INETJ Day 2008 Session 1-2 PASSJ から見る SQL Server 2008 の新機能</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2008/05/17/24784.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2008/05/17/24784.aspx</id><created>2008-05-17T01:45:00Z</created><issued>2008-05-16T16:45:00+09:00</issued><modified>2008-05-17T01:45:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;INETAJ Day 2008&lt;BR&gt;&lt;A href="http://www.microsoft.com/japan/powerpro/community/inetaday/2008/default.mspx"&gt;http://www.microsoft.com/japan/powerpro/community/inetaday/2008/default.mspx&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;2008/05/17 に PASSJ を代表して講演してきます。&lt;BR&gt;セッション資料を珍しく事前公開してますんで、見てください。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.sqlpassj.org/inetaj/INETAJ-1Day-2008-Session1-2-Ver1_2_PDF.pdf"&gt;http://www.sqlpassj.org/inetaj/INETAJ-1Day-2008-Session1-2-Ver1_2_PDF.pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;そのうち消滅させる予定なので、必要な方はお早めに。。。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/24784.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/24784.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/24784.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/24784.aspx</trackback:ping></entry><entry><title>[SQL Server 2008]SQL Server 2008 CTP Feb 2008 インストール - 苦難の道</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2008/05/08/24767.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2008/05/08/24767.aspx</id><created>2008-05-08T11:37:00Z</created><issued>2008-05-08T02:37:00+09:00</issued><modified>2008-05-08T11:37:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2008]SQL Server 2008 CTP Feb 2008 インストール&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;ほんと、ご無沙汰です。&lt;BR&gt;死ぬほど仕事が忙しく、すべてを放置していました。。。&lt;/P&gt;
&lt;P&gt;で、今更なんですが、SQL Server 2008 CTP Feb 2008 のインストールがうまくいかなくて非常に困っていたんですが、原因がわかりました。&lt;BR&gt;インストールに失敗するのは「クライアント ツール」と「ブックスオンライン」で、他はすべてうまくいっていました。&lt;BR&gt;当初、x64 上に SQL Server 2005 Express(32bit) をインストールしていたので、SQL Server 2008 のエンジンとレポーティングがインストールできず、ReadMe を参照したところ、レジストリのアクセス権が問題だと書いてあったので、それをクリアしての再チャレンジで、あれこれやっていました。&lt;BR&gt;Windows Vista SP1/Windows XP SP2/Windows Server 2008&amp;nbsp;x86 すべて、Windows Server 2003 R2 SP2 x64 のすべての環境で再現していたので、どこかに問題があると思って、やっと調べ上げました。&lt;BR&gt;絶対とは言い切れないのですが、ISO イメージを DAEMON Tools などにマウントしてインストールするとかなりの確率で再現します。&lt;BR&gt;自己解凍形式のものをダウンロードしてインストールしたら問題なくインストールできたので、ISO イメージに含まれる Sql.cab が壊れている可能性が高いです。&lt;/P&gt;
&lt;P&gt;最初は照合順序なのかどうなのかあれこれ試したのですが、デフォルトの照合順序の場合はインストールできたので、日本語の照合順序を選んだときにだけ発生する問題のようです。&lt;/P&gt;
&lt;P&gt;一応、MS にログを送ってみたので、回答を待ちたいと思います。。。&lt;/P&gt;
&lt;P&gt;さて、これで 5/17 のための PPT に取り掛かれる。。。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/24767.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/24767.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/24767.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/24767.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]AGGREGATES/インデックス付きビュー/DTA デモ</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23974.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23974.aspx</id><created>2007-09-05T21:33:00Z</created><issued>2007-09-05T12:33:00+09:00</issued><modified>2007-09-05T21:33:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]AGGREGATES/インデックス付きビュー/DTA デモ&lt;/LI&gt;&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;「AGGREGATE-INDEXED_VIEW-DTA.sql」を SQL Server Management Studio で開く&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_1.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_2.jpg"&gt;&lt;BR&gt;Hash Match が発生していてパフォーマンスがよろしくない&lt;BR&gt;IO も確認してみると&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_3.jpg"&gt;&lt;BR&gt;Worktable が生成されていることがわかる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;最高のパフォーマンスを求めるために「データベース エンジン チューニング アドバイザ」に「AGGREGATE-INDEXED_VIEW-DTA.sql」(DTA)を読み込ませ、必要なインデックス、インデックス付きビュー、統計情報の更新を自動で生成させるため、DTA を起動&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_4.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;DTA の全般的な設定を行う&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_5.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;チューニング オプションの設定を確認&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_6.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;設定が完了したら、分析の開始を行う&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_7.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;分析完了すると推奨設定が表示される&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_8.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;推奨設定を反映させる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_9.jpg"&gt;&lt;BR&gt;※推奨設定の保存を行うとオブジェクト名などの変更ができるようになる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_10.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;完了したら、再度実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/538/o_11.jpg"&gt;&lt;BR&gt;インデックス付きビューが参照され、Stream Aggregate で実行されているため、明らかに実行プランが良くなっていることがわかる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;結論&lt;BR&gt;実際にパフォーマンスチューニングの方法がよくわからない場合は、このデータベース エンジン チューニング アドバイザを使って最適なパフォーマンスを得るように&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23974.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23974.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23974.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23974.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]JOIN デモ</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23973.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23973.aspx</id><created>2007-09-05T21:01:00Z</created><issued>2007-09-05T12:01:00+09:00</issued><modified>2007-09-05T21:03:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]JOIN デモ&lt;/LI&gt;&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;「JOIN.sql」を SQL Server Management Studio で開く&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_1.jpg"&gt;&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;前準備を実行する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_2.jpg"&gt;&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;クラスタ化インデックス（主キー）のみで結合してみる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_3.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_4.jpg"&gt;&lt;BR&gt;Software-NUMA の設定を行っているため、分散クエリーになっているので、少々わかりにくい&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;同じクエリーを MAXDOP 1 にして実行してみる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_5.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_6.jpg"&gt;&lt;BR&gt;クラスタ化インデックスのスキャンと Hash Match アグリゲーションが発生しているため、非常にコストが高いことが想像できる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;まずは CHARGE テーブルのカバリング・インデックスを作成する&lt;BR&gt;検索条件や結合条件から&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_7.jpg"&gt;&lt;BR&gt;で作成し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_8.jpg"&gt;&lt;BR&gt;作成した IX_CHARGE_COVER インデックスが使用されていることがわかる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;つぎに PREFECTURE テーブルにカバリング・インデックスを作成する&lt;BR&gt;検索条件や結合条件から&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_9.jpg"&gt;&lt;BR&gt;で作成し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_10.jpg"&gt;&lt;BR&gt;作成した IX_PREFECTURE_COVER インデックスが使用されているのがわかる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;次に VENDER テーブルにカバリング・インデックス + INCLUDE オプションのインデックスを作成する&lt;BR&gt;検索条件、結合条件、抽出項目から&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_11.jpg"&gt;&lt;BR&gt;で作成し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_12.jpg"&gt;&lt;BR&gt;作成した IX_VENDER_COVER インデックスが使用されていることがわかる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;次に MEMBER テーブルにカバリング・インデックス + INCLUDE オプションのインデックスを作成する&lt;BR&gt;検索条件、結合条件、抽出項目から&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_13.jpg"&gt;&lt;BR&gt;で作成し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_14.jpg"&gt;&lt;BR&gt;作成した IX_MEMBER_COVER インデックスが使用されていることがわかる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;最後に STATEMENT テーブルにカバリング・インデックス + INCLUDE オプションのインデックスを作成する&lt;BR&gt;検索条件、結合条件、抽出項目から&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_15.jpg"&gt;&lt;BR&gt;で作成し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/537/o_16.jpg"&gt;&lt;BR&gt;作成した IX_STATEMENT_COVER インデックスが使用されていることがわかる&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;結論&lt;BR&gt;検索条件、結合条件、抽出項目で必要なカバリング・インデックスを作成する&lt;BR&gt;ただし、項目の順番を間違うと最適なパフォーマンスが得られない&lt;BR&gt;どの項目をどの順番で作成すればいいのかわからない場合は、次の記事を参考にするように&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23973.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23973.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23973.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23973.aspx</trackback:ping></entry><entry><title>[SQL Server]OR デモ</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23972.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/09/05/23972.aspx</id><created>2007-09-05T20:15:00Z</created><issued>2007-09-05T11:15:00+09:00</issued><modified>2007-09-05T20:15:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server]OR デモ&lt;/LI&gt;&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;「OR.sql」を SQL Server Management Studio/クエリーアナライザーで開く&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_1.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;前準備を実行する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_2.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;検証用テーブルを作成する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_3.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;基本的なカバリング・インデックスを作成する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_4.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;基本形を実行し、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_5.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_6.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;さらに UNION 用のカバリング・インデックスを作成する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_7.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;OR、UNION、UNION ALL のそれぞれの SQL を実行し、どの SQL が一番コストが低いか確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_8.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_9.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_10.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/536/o_11.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;結論&lt;BR&gt;状況に応じて、OR は UNION、UNION は OR に変更し、コストが一番少ないクエリーを採用すること&lt;BR&gt;UNION を使う場合、結果が明らかに重複しないことがわかっている場合は UNION ALL を採用すること&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23972.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23972.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23972.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23972.aspx</trackback:ping></entry><entry><title>[SQL Server]AND デモ</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/09/02/23963.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/09/02/23963.aspx</id><created>2007-09-02T19:09:00Z</created><issued>2007-09-02T10:09:00+09:00</issued><modified>2007-09-02T19:09:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server]AND デモ&lt;/LI&gt;&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;「AND.sql」を SQL Server Management Studio/クエリーアナライザー使って開く&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_1.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;前準備を実行する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_2.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;とりあえず実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_3.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_4.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;「PERSON_NAME」の非クラスタ化インデックスを作成&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_5.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;テーブルヒント「INDEX(0)」「INDEX(1)」のそれぞれとテーブルヒントがないクエリーで実行プランを比較する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_6.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_7.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_8.jpg"&gt;&lt;BR&gt;実際の実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_9.jpg"&gt;&lt;BR&gt;テーブルヒントがないクエリーで、作成した「IX_MEMBER_PERSON_NAME」インデックスが使われず、クラスタ化インデックスの SEEK が行われていて、明らかに作成したインデックスが無効であることが理解できる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;検索条件を網羅するカバリング・インデックスを作成してみる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_10.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;再度、実行プランを確認&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_11.jpg"&gt;&lt;BR&gt;カバリング・インデックスが使用されていることがわかる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;最適なカバリング・インデックスを見つけるために、項目の順番を変えてみる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_12.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;再度、実行プランを確認する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_13.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_14.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_15.jpg"&gt;&lt;BR&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_16.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/535/o_17.jpg"&gt;&lt;BR&gt;バッチ相対のコストが一番低いのが、検索条件と同じ順番で作成したインデックスであることがわかる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;結論&lt;BR&gt;検索時の条件と同じ順番でインデックスを作成すると最適なパフォーマンスが得られる&lt;BR&gt;また、検索引数（SARG）は否定を使うとインデックスが使用されなくなったり、暗黙的型変換を起こすような条件を指定するとパフォーマンスに多大な影響を与える&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23963.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23963.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23963.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23963.aspx</trackback:ping></entry><entry><title>[SQL Server]検索性デモ</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/09/02/23962.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/09/02/23962.aspx</id><created>2007-09-02T17:10:00Z</created><issued>2007-09-02T08:10:00+09:00</issued><modified>2007-09-02T17:10:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server]検索性デモ&lt;/LI&gt;&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;「検索性デモ.sql」を SQL Server Management Studio/クエリーアナライザーを使って開く&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_1.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;実行プランを表示するようにする&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_2.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;前準備およびテーブル・インデックスを作成を実行する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_3.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;1 件を選択する SELECT の実行&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_4.jpg"&gt;&lt;BR&gt;ヒープテーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_5.jpg"&gt;&lt;BR&gt;クラスタ化テーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_6.jpg"&gt;&lt;BR&gt;クラスタ化インデックスがある場合のほうがコストが低い&lt;BR&gt;※これが結論ではない&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;レンジ検索を行い、どこの段階でテーブルスキャンになるのか確認する&lt;BR&gt;1,000 件未満の場合&lt;BR&gt;ヒープテーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_7.jpg"&gt;&lt;BR&gt;クラスタ化テーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_8.jpg"&gt;&lt;BR&gt;ヒープテーブル、クラスタ化テーブルともにインデックスを使用する&lt;BR&gt;&lt;BR&gt;10,000 件未満の場合&lt;BR&gt;ヒープテーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_9.jpg"&gt;&lt;BR&gt;クラスタ化テーブルの実行プラン&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/534/o_10.jpg"&gt;&lt;BR&gt;ある閾値を超えるとヒープテーブル（非クラスタ化インデックスのみ）の場合、実行プランが変わる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;結論&lt;BR&gt;非クラスタ化インデックスのみのテーブルを検索するとき、検索結果が増える傾向がある時は実行プランが変わる&lt;BR&gt;クラスタ化インデックスがある場合は、すべての状態においてクラスタ化インデックスを使用する&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23962.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23962.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23962.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23962.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]Tech・Ed 2007 Yokohama T6-402 SQL Server Always-On Technologies : 高度なインデックス戦略 - デモデータベースおよびデモソース</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/08/31/23960.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/08/31/23960.aspx</id><created>2007-08-31T19:37:00Z</created><issued>2007-08-31T10:37:00+09:00</issued><modified>2007-08-31T19:37:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]Tech・Ed 2007 Yokohama T6-402 SQL Server Always-On Technologies : 高度なインデックス戦略 - デモデータベースおよびデモソース&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;私のセッションで使用したデモデータベースとデモソースを公開します&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;セッション資料をダウンロード&lt;BR&gt;&lt;A href="http://www.sqlpassj.org/semievent/semi/teched2007/intro.aspx"&gt;http://www.sqlpassj.org/semievent/semi/teched2007/intro.aspx&lt;/A&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Zip で圧縮しているので、適時解凍してください&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;SQL Server Management Studio 上で、T6-402-DEMO.bak をリストア&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-1.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-2.jpg"&gt;&lt;BR&gt;復元先データベースを「T6-402-DEMO」と入力&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-3.jpg"&gt;&lt;BR&gt;復元元ソースを「デバイスから」を選び「...」ボタンをクリック&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-4.jpg"&gt;&lt;BR&gt;「追加」ボタンをクリック&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-5.jpg"&gt;&lt;BR&gt;「T6-402-DEMO.bak」を選択して「OK」ボタンをクリック&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-6.jpg"&gt;&lt;BR&gt;「復元」にチェックを入れて「OK」ボタンをクリック&lt;BR&gt;※状況によっては「復元オプション」の「既存のデータベースを上書きする」にチェック入れる必要があり&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;IO の状態を見れるように SQL Server Management Studio の設定を変更する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-7.jpg"&gt;&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-8.jpg"&gt;&lt;BR&gt;「SET STATISTICS IO」にチェックを入れる&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;デモスクリプトを実行するときには、それぞれ実行プランを表示するように設定する&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-9.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;AGGREGATE-INDEXED_VIEW-DTA.sql のデモは「データベース エンジン チューニングアドバイザ」に SQL ワークロードという形で読み込ませる&lt;BR&gt;&lt;IMG alt="" src="/images/blogs_sqlpassj_org/mitsugi/533/o_T6-402-10.jpg"&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23960.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23960.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23960.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23960.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]KB936305 - SQL Server 2005 Service Pack 2 の累積的な更新 2 パッケージは、使用できます。</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/07/23/23845.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/07/23/23845.aspx</id><created>2007-07-23T21:35:00Z</created><issued>2007-07-23T12:35:00+09:00</issued><modified>2007-07-23T21:35:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]KB936305 - SQL Server 2005 Service Pack 2 の累積的な更新 2 パッケージは、使用できます。&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;A href="http://support.microsoft.com/Default.aspx/kb/936305"&gt;http://support.microsoft.com/Default.aspx/kb/936305&lt;/A&gt;&lt;BR&gt;の修正プログラムは日本語でオンラインで申し込めます。&lt;BR&gt;&lt;A href="http://go.microsoft.com/?linkid=6294451"&gt;http://go.microsoft.com/?linkid=6294451&lt;/A&gt;&lt;BR&gt;応答は 8 営業時間以内とかなり早いです。&lt;BR&gt;私の場合は 30 分で応答がありました。&lt;BR&gt;この修正プログラムだけではなく、他の修正プログラムも同様に入手可能なので、必要に応じて入手してください。&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23845.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23845.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23845.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23845.aspx</trackback:ping></entry><entry><title>[Tech・Ed 2007 Yokohama]PASSJ 関連セッション決定</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/07/22/23840.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/07/22/23840.aspx</id><created>2007-07-22T21:10:00Z</created><issued>2007-07-22T12:10:00+09:00</issued><modified>2007-07-22T21:10:00Z</modified><content type="text/html" mode="escaped">&lt;UL dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;LI&gt;[Tech・Ed 2007 Yokohama]PASSJ 関連セッション決定&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P dir=ltr&gt;T6-401 SQL Server 2005 パフォーマンス チューニングとモニタリング&lt;BR&gt;スピーカ：熊澤　幸生さん&lt;BR&gt;日時：2007/08/21 17:00 - 18:15&lt;BR&gt;会場：Room B&lt;BR&gt;&lt;A href="http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-401"&gt;http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-401&lt;/A&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;T6-403 SQL Server 2005 データベースの定期メンテナンスによるパフォーマンス向上&lt;BR&gt;スピーカ：松本　美穂さん&lt;BR&gt;日時：2007/08/23 17:00 - 18:15&lt;BR&gt;会場：Room A&lt;BR&gt;&lt;A href="http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-403"&gt;http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-403&lt;/A&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;T6-402 SQL Server Always-On Technologies : 高度なインデックス戦略&lt;BR&gt;スピーカ：小川　貢&lt;BR&gt;日時：2007/08/24 17:00 - 18:15&lt;BR&gt;会場：Room C&lt;BR&gt;&lt;A href="http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-402"&gt;http://www.event-registration.jp/events/te07/SessionDetail.aspx?sessionid=T6-402&lt;/A&gt;&lt;BR&gt;※なぜ、私が最終日の最終セッションなの？絶対陰謀だ。。。orz&lt;/P&gt;
&lt;P dir=ltr&gt;BoF 16 PASSJ なんでも Q&amp;amp;A&lt;BR&gt;スピーカ：熊澤　幸生さん、河端　善博さん、田辺　浩靖さん、小川　貢、松本　崇博さん（予定）、松本　美穂さん（予定）&lt;BR&gt;日時：2007/08/23 18:35 - 19:50&lt;BR&gt;&lt;A href="http://www.event-registration.jp/events/te07/bof_detail/bof_detail16.htm"&gt;http://www.event-registration.jp/events/te07/bof_detail/bof_detail16.htm&lt;/A&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;USL! PASSJ から見る SQL Server 2008&lt;BR&gt;スピーカ：河端　善博さん、熊澤　幸生さん、小川　貢、村岡　順子さん&lt;BR&gt;日時：2007/08/23 16:40 - 17:00&lt;BR&gt;&lt;A href="http://www.event-registration.jp/events/te07/streetlive_detail/streetlive_detail14.htm"&gt;http://www.event-registration.jp/events/te07/streetlive_detail/streetlive_detail14.htm&lt;/A&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;よく考えると 08/23-24 は余裕ありませんな。。。&lt;BR&gt;その前に、テクニカルセッションの PPT を完成させなきゃ。&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23840.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23840.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23840.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23840.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]使用されていないインデックス一覧</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/07/22/23839.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/07/22/23839.aspx</id><created>2007-07-22T20:31:00Z</created><issued>2007-07-22T11:31:00+09:00</issued><modified>2007-07-22T20:32:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]使用されていないインデックス一覧&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;sys.dm_db_index_usage_stats 動的管理ビューを使用して、SQL Server 2005 が起動、AUTO_CLOSE、デタッチ、シャットダウンされてからの統計を取得する&lt;BR&gt;注意点として、システムテーブルや動的管理ビューを参照するときに WITH(NOLOCK) を記述して、ロックをかけないようにすること&lt;BR&gt;バックグラウンドでトランザクションを発生させ、コミットしていない状態があるとシステムテーブルなどがロックされるため&lt;BR&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;FONT color=#ffa500&gt;※Tech・Ed 2007 Yokohama T6-402 デモの一部&lt;/FONT&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;-- &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;使用されていないインデックスリスト&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;-- sys.dm_db_index_usage_stats &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;動的管理ビューに存在していないもの&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;-- SQL Server 2005 &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;の起動、&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;AUTO_CLOSE&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;、デタッチ、&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;-- &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;シャットダウンすると初期化される&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;SELECT&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;/SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;オブジェクト&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;ID]&lt;SPAN style="COLOR: gray"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_name&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt; [&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;オブジェクト名&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;]&lt;SPAN style="COLOR: gray"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;index_id [&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;インデックス&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;ID]&lt;SPAN style="COLOR: gray"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;name [&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;インデックス名&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;FROM&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;sys.indexes&lt;/SPAN&gt; i &lt;SPAN style="COLOR: blue"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;NOLOCK&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;),&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;sys.objects&lt;/SPAN&gt; o &lt;SPAN style="COLOR: blue"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;NOLOCK&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;WHERE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;objectproperty&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;o&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;'IsUserTable'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;AND&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;index_id &lt;SPAN style="COLOR: gray"&gt;NOT&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;IN&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;SELECT&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;s&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;index_id&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;sys.dm_db_index_usage_stats&lt;/SPAN&gt; s &lt;SPAN style="COLOR: green"&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;NOLOCK&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WHERE&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;s&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;AND&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;index_id &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; s&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;index_id&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;AND&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s.&lt;/SPAN&gt;database_id &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; &lt;SPAN style="COLOR: fuchsia"&gt;DB_ID&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;AND&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;o&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; i&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;object_id&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;ORDER&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;BY&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;オブジェクト名&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;]&lt;SPAN style="COLOR: gray"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;インデックス&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;ID]&lt;SPAN style="COLOR: gray"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'ＭＳ 明朝','serif'; mso-font-kerning: 0pt; mso-no-proof: yes; mso-ascii-font-family: 'Courier New'; mso-fareast-font-family: 'ＭＳ 明朝'; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: 'Courier New'; mso-bidi-font-family: 'Courier New'"&gt;インデックス名&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 12pt; FONT-FAMILY: 'Courier New'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;]&lt;SPAN style="COLOR: gray"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23839.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23839.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23839.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23839.aspx</trackback:ping></entry><entry><title>[Vista]スリープがキャンセルされる</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/07/20/23835.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/07/20/23835.aspx</id><created>2007-07-20T00:56:00Z</created><issued>2007-07-19T15:56:00+09:00</issued><modified>2007-07-20T01:04:00Z</modified><content type="text/html" mode="escaped">&lt;P&gt;諸説いろいろあるようですが、誰も正しい答えを書いていないので苦労しました。&lt;BR&gt;原因は Windows Vista の Power Management の設定が、Windows Media Center を設定すると書き換えられるからです。&lt;BR&gt;GUI の設定があることに気がつかず、Powercfg コマンドを使いました。。。orz&lt;BR&gt;Powercfg コマンドで現在の電源設定の GUID を出力させ、その GUID で詳細な電源設定を見ると「マルチメディアの設定」の設定があり、「現在の AC 電源設定のインデックス: 0x00000002」になっているのが見て取れます。&lt;BR&gt;この設定を書き換えるとスリープが使用可能になります。&lt;BR&gt;※Powercfg のコマンドの詳細は powercfg -? &amp;gt; powercfghlp.txt のようにテキストに出力してみたほうがよいでしょう。&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;powercfg -getactivescheme&lt;BR&gt;powercfg -query %GUID%&lt;BR&gt;powercfg -setacvalueindex %GUID% 9596fb26-9850-41fd-ac3e-f7c3c00afd4b 03680956-93bc-4294-bba6-4e0f09bb717f 0&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;なんか余計なことしてどつぼにはまってたので。。。&lt;BR&gt;それどころじゃないんですが。orz&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23835.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23835.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23835.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23835.aspx</trackback:ping></entry><entry><title>【宣伝】The Dead Flower Children （親友のバンド）</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/07/13/23818.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/07/13/23818.aspx</id><created>2007-07-13T20:05:00Z</created><issued>2007-07-13T11:05:00+09:00</issued><modified>2007-07-13T20:05:00Z</modified><content type="text/html" mode="escaped">&lt;P&gt;ぜんぜん SQL とはかけ離れているんだけど、私の親友がやっているバンド（The Dead Flower Children）が MySpace でオリジナル曲を公開しています。&lt;BR&gt;&lt;A href="http://www.myspace.com/thedeadflowerchildren"&gt;http://www.myspace.com/thedeadflowerchildren&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;昔ブログに書いたんだけど&lt;BR&gt;場所：恵比寿&lt;BR&gt;店名：What the Dickens!(&lt;A href="http://www.towncryer.jp/"&gt;&lt;FONT color=#000080&gt;http://www.towncryer.jp/&lt;/FONT&gt;&lt;/A&gt;)&lt;BR&gt;地図：&lt;A href="http://www.towncryer.jp/WTD.html"&gt;&lt;FONT color=#000080&gt;http://www.towncryer.jp/WTD.html&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;で、活動しているので、気に入った方は応援してあげてください。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23818.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23818.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23818.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23818.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]インサイド Microsoft SQL Server 2005 ストレージエンジン編</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/06/28/23646.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/06/28/23646.aspx</id><created>2007-06-28T18:59:00Z</created><issued>2007-06-28T09:59:00+09:00</issued><modified>2007-06-28T18:59:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]インサイド Microsoft SQL Server 2005 ストレージエンジン編&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;待望の第 1 段である「インサイド Microsoft SQL Server 2005 ストレージエンジン編」が 2007/07/02 に日経 BP ソフトプレス/Microsoft Press から発売になります。&lt;BR&gt;Kalen Delaney 著、（株）オーパス・ワン訳、&lt;FONT color=#000080 size=6&gt;PASSJ 理事の熊澤さん監修&lt;/FONT&gt;です。&lt;BR&gt;&lt;IMG alt="インサイド Microsoft SQL Server 2005 ストレージエンジン編" src="http://bpstore.nikkeibp.co.jp/nsp/book/05504/05504.jpg"&gt;&lt;BR&gt;&lt;A href="http://bpstore.nikkeibp.co.jp/nsp/book/05504/05504.html"&gt;http://bpstore.nikkeibp.co.jp/nsp/book/05504/05504.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;ぜひ、購入して熟読してください。&lt;BR&gt;PASSJ でもブックレビューをさせていただきたいなぁと。&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23646.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23646.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23646.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23646.aspx</trackback:ping></entry><entry><title>[SQL Server]SQL Server の JIS2004 対応に関するガイドライン (exe, 3.69 MB) - 2007/06 改訂版</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/06/22/23622.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/06/22/23622.aspx</id><created>2007-06-22T19:08:00Z</created><issued>2007-06-22T10:08:00+09:00</issued><modified>2007-06-23T00:57:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server]SQL Server の JIS2004 対応に関するガイドライン (exe, 3.69 MB)&amp;nbsp; - 2007/06 改訂版&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;「&lt;A href="http://go.microsoft.com/?linkid=7003958" target=_blank&gt;SQL Server の JIS2004 対応に関するガイドライン (exe, 3.69 MB)&lt;/A&gt;」が 2007/06 に改訂されました。&lt;BR&gt;改訂履歴はドキュメントを参照していただきたいのですが、今回から&lt;FONT color=#000080 size=6&gt;サンプルコードが同梱&lt;/FONT&gt;されました。&lt;BR&gt;サンプルコードやサンプルデータをメモ帳などで表示させる場合で、使用 OS が Windows XP/Windows Server 2003 の場合は、「&lt;A href="http://www.microsoft.com/japan/windows/products/windowsvista/jp_font/jis04/default.mspx" target=_blank&gt;Windows XP および Windows Server 2003 向けJIS2004 対応 MS ゴシック &amp;amp; MS 明朝フォントパッケージについて&lt;/A&gt;」をインストールしてから表示してください。&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23622.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23622.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23622.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23622.aspx</trackback:ping></entry><entry><title>[PASSJ]【Leaders'Report：Vol.330】　～SQL Server 2008 June CTP on VirtualPC～ サンプルコード訂正</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/06/14/23598.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/06/14/23598.aspx</id><created>2007-06-14T23:06:00Z</created><issued>2007-06-14T14:06:00+09:00</issued><modified>2007-06-14T23:34:00Z</modified><content type="text/html" mode="escaped">&lt;P&gt;2007/06/14 配信の【Leaders'Report：Vol.330】　～SQL Server 2008 June CTP on VirtualPC～&lt;BR&gt;&lt;A href="http://www.sqlpassj.org/bbs/ml_disp.aspx?forum_id=0&amp;amp;current_page=1&amp;amp;disp_mode=0&amp;amp;detail_mode=1&amp;amp;message_id=21667"&gt;http://www.sqlpassj.org/bbs/ml_disp.aspx?forum_id=0&amp;#164;t_page=1&amp;amp;disp_mode=0&amp;amp;detail_mode=1&amp;amp;message_id=21667&lt;/A&gt;&lt;BR&gt;のサンプルコードで誤りがありましたので訂正します。&lt;/P&gt;
&lt;P&gt;&amp;lt;-- Sample Code Language C# --&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #region CheckUnicodeCharacterType メソッド&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// UNICODE 文字の種別判定メソッド&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　基本多言語面&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　CJK 用の記号および分音記号濁音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ濁音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ小文字&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　結合分音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　結合半角記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　NULL 文字&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　スペース調整記号結合文字&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　補助文字（サロゲートペア）&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　を判定する&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;PARAM name="value"&gt;UNICODE の種別を判定したい UNICODE 文字&lt;/PARAM&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;RETURNS&gt;UnicodeCharacter 列挙体の値&lt;/RETURNS&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static UnicodeCharacterType CheckUnicodeCharacterType(SqlString value)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UnicodeCharacterType flag = UnicodeCharacterType.NULL;&amp;nbsp; // 判定結果フラグ&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] buffer;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 一時格納用 byte 配列&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 引数の値チェック&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (value.IsNull || value.Value.TrimEnd().Length == 0)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // NULL を表す UnicodeCharacter.NULL を返す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return flag;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // デフォルトで UNICODE 基本多言語面文字とする&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag = UnicodeCharacterType.BMP;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // IME パッドに合わせ、BigEndianUnicode のエンコードを使用する&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Encoding bigEndianUnicodeEncoding = Encoding.BigEndianUnicode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // byte 配列取得&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; buffer = bigEndianUnicodeEncoding.GetBytes(value.Value.TrimEnd());&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 補助文字（サロゲートペア）&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (buffer.Length == 4)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.&lt;FONT color=#ff0000&gt;SURROGATEPAIR&lt;/FONT&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // byte 配列長が 2 というのは UNICODE 基本多言語面（BMP）&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (buffer.Length == 2)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 半角カタカナレンジ判定&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((buffer[0] == 0xFF))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 半角カタカナ&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((buffer[1] &amp;gt;= 0x61 &amp;amp;&amp;amp; buffer[1] &amp;lt;= 0x66) || (buffer[1] &amp;gt;= 0x70 &amp;amp;&amp;amp; buffer[1] &amp;lt;= 0x9D))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.HANKAKU_KATAKANA;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 半角カタカナ小文字&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (&lt;FONT color=#ff0000&gt;buffer[1] &amp;gt;= 0x67 &amp;amp;&amp;amp; buffer[1] &amp;lt;= 0x6F&lt;/FONT&gt;)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.HANKAKU_KATAKANA_KOMOJI;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 半角カタカナ濁音記号判定&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (buffer[1] == 0x9E || buffer[1] == 0x9F)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.HANKAKU_KATAKANA_DAKUON;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // CJK 用の記号および分音記号の濁音記号判定&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (((buffer[0] == 0x30) &amp;amp;&amp;amp; (buffer[1] &amp;gt;= 0x99)) &amp;amp;&amp;amp; ((buffer[0] == 0x30) &amp;amp;&amp;amp; (buffer[1] &amp;lt;= 0x9C)))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.CJK_DAKUON;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 結合分音記号判定&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (((buffer[0] == 0x03) &amp;amp;&amp;amp; (buffer[1] &amp;gt;= 0x00)) &amp;amp;&amp;amp; ((buffer[0] == 0x03) &amp;amp;&amp;amp; (buffer[1] &amp;lt;= 0x6F)))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.KETSUGO_BUON;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 結合半角記号判定&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (((buffer[0] == 0xFE) &amp;amp;&amp;amp; (buffer[1] &amp;gt;= 0x20)) &amp;amp;&amp;amp; ((buffer[0] == 0xFE) &amp;amp;&amp;amp; (buffer[1] &amp;lt;= 0x2F)))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.KETSUGO_HANKAKU_KIGOU;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // スペース調整文字の結合記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (((buffer[0] == 0x02) &amp;amp;&amp;amp; (buffer[1] == 0xE5)) || ((buffer[0] == 0x02) &amp;amp;&amp;amp; (buffer[1] == 0xE9)))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeCharacterType.SPACE_TYOUSEI;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return flag;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #endregion&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #region UnicodeCharacterType 列挙体&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// UNICODE 文字判定列挙体&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; enum UnicodeCharacterType&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 基本多言語面を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+0020 ～ U+FFFF&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ小文字&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　半角カタカナ濁音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　CJK 用の記号および分音記号濁音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　結合分音記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　結合半角記号&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 　スペース調整記号結合文字を除外&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BMP,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// CJK 用の記号および分音記号濁音記号を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+3099 ～ U+309C&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CJK_DAKUON,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 半角カタカナを表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+FF61 ～ U+FF66、U+FF70 ～ U+FF9D&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HANKAKU_KATAKANA,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 半角カタカナ濁音記号を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+FF9E、U+FF9F&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HANKAKU_KATAKANA_DAKUON,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 半角カタカナ小文字を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+FF67 ～ U+FF6F&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HANKAKU_KATAKANA_KOMOJI,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 結合分音記号を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;FONT color=#ff0000&gt;U+0300&lt;/FONT&gt; ～ U+036F&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KETSUGO_BUON,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 結合半角記号を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+FE20 ～ U+FE2F&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KETSUGO_HANKAKU_KIGOU,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// NULL 文字を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NULL,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// スペース調整記号結合文字を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+02E5、U+02E9&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SPACE_TYOUSEI,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 補助文字（サロゲートペア）を表す&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// U+10000 ～ U+10FFFF&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/SUMMARY&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#ff0000&gt;SURROGATEPAIR&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #endregion&lt;BR&gt;&amp;lt;-- Sample Code Language C# --&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff0000&gt;赤字&lt;/FONT&gt;になっている部分が訂正です。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23598.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23598.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23598.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23598.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]JIS X 0213:2004 対応文字列操作 SQL CLR ユーザー定義関数</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/06/12/23589.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/06/12/23589.aspx</id><created>2007-06-12T23:55:00Z</created><issued>2007-06-12T14:55:00+09:00</issued><modified>2007-06-13T17:30:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;[SQL Server 2005]JIS X 0213:2004 対応文字列操作 SQL CLR ユーザー定義関数&lt;/LI&gt;&lt;/UL&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;ひっそりと公開。（コードなし）&lt;BR&gt;&lt;A href="http://www.horae.dti.ne.jp/~ogawa/samples/JapaneseStringManipulate.exe"&gt;http://www.horae.dti.ne.jp/~ogawa/samples/JapaneseStringManipulate.exe&lt;/A&gt;&lt;BR&gt;登録は JapaneseStringManipulate.sql を参考に。&lt;BR&gt;ソースコードは将来公開する予定ですが、現在のところ公開しません。&lt;BR&gt;バグや質問があれば、直接ブログの「連絡する」から連絡してください。&lt;BR&gt;なお「&lt;FONT color=#ff0000&gt;3 つ以上で 1 文字表示する結合文字には対応していません&lt;/FONT&gt;」のでご注意ください。&lt;/P&gt;
&lt;P&gt;背景&lt;BR&gt;UNICODE の補助文字（サロゲートペア、16bit + 16bit の 32bit で表す）・結合文字（UNICODE 基本多言語面〈16bit〉の中で、見た目上 1 文字になっているが、実は別々の文字が合成して表示される文字のこと、濁音符記号などが該当する）を SQL Server 2005 の標準文字列関数（LEFT、LEN、REVERSE、RIGHT、STUFF、SUBSTRINGの各関数）で正しく処理できないため、SQL CLR を使った実装が必要になる&lt;/P&gt;
&lt;P&gt;処理実装&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;基礎実装&lt;/LI&gt;&lt;/UL&gt;
&lt;OL dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;OL&gt;
&lt;LI&gt;補助文字・結合文字（半角カタカナ濁音記号も含む）・基底文字を文字単位で判定メソッド 
&lt;LI&gt;補助文字・基底文字 + 結合文字（半角カタカナ濁音記号も含む）・基底文字・結合文字単体で分解し、ArrayList 化するメソッド&lt;/LI&gt;&lt;/OL&gt;&lt;/OL&gt;&lt;/BLOCKQUOTE&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;UL dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;LI&gt;　JapaneseLeft 関数&lt;BR&gt;JapaneseSubstring 関数に開始位置 1 、JapanseLeft 関数の value 引数、length 引数を渡して、結果を返す 
&lt;LI&gt;　JapaneseLen 関数&lt;BR&gt;StringInfo.ParseCombiningCharacters で、文字数を取得&lt;BR&gt;半角カタカナ濁音記号も 1 文字とカウントされる 
&lt;LI&gt;　JapaneseLen2 関数&lt;BR&gt;value 引数を ArrayList 化し、ArrayList.Count の結果を返す&lt;BR&gt;半角カタカナ濁音記号は基底文字が先にあった場合、ArrayList 化するときに基底文字 + 半角カタカナ濁音記号で格納するため、カウントしない&lt;BR&gt;基底文字が先にない場合は半角カタカナ濁音記号も 1 文字としてカウントする 
&lt;LI&gt;　JapaneseReverse 関数&lt;BR&gt;value 引数を ArrayList 化し、ArrayList.Reverse メソッドで反転し、結果を返す 
&lt;LI&gt;　JapaneseRight 関数&lt;BR&gt;value 引数を JapaneseReverse 関数で反転し、値を JapaneseLeft 関数の value 引数とし、JapaneseRight 関数の length 引数を渡して左から切り出し、結果を再度反転させて結果を返す&lt;BR&gt;※これがアホな実装の 1 つ 
&lt;LI&gt;　JapaneseStuff 関数&lt;BR&gt;value 引数を ArrayList 化し、開始位置（start）までは ArrayList 化した文字を格納し、開始位置から削除範囲（length）までは、挿入文字で入れ替え、範囲を超えたらまた ArrayList 化した文字を格納して、結果を返す 
&lt;LI&gt;　JapaneseSubstring 関数&lt;BR&gt;value 引数を ArrayList 化し、ArrayList を開始位置（start）から文字幅（length）を切り出して結果を返す&lt;BR&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/BLOCKQUOTE&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23589.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23589.aspx</wfw:comment><slash:comments>3</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23589.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23589.aspx</trackback:ping></entry><entry><title>[PASSJ After School]CLT Event:Windows Vista 時代の SQL Server 2005 - PASSJ Special Edition </title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/06/03/23534.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/06/03/23534.aspx</id><created>2007-06-03T00:47:00Z</created><issued>2007-06-02T15:47:00+09:00</issued><modified>2007-06-03T00:47:00Z</modified><content type="text/html" mode="escaped">&lt;P&gt;ちょっとフライングですが、とりあえずやる方向で検討中というか、やります。&lt;BR&gt;CLT イベントで東京・大阪とやりましたが、Microsoft からの JIS2004 対応の情報が少ない、資料はあるがどう解釈していいのかわからないという声を聞きました。&lt;BR&gt;JIS X 0213:2004(JIS2004) 規格における日本語処理のアプリケーションへの影響について、問題点、検討事項、回避策など網羅的にカバーしている資料が現在皆無です。&lt;BR&gt;Windows Server 2003/Windows XP の JIS2004 対応フォントの登場による影響、Windows Vista の JIS90 対応フォントによる影響、フォント搭載プリンタの影響、IME による影響、.NET Framework 2.0/3.0 における文字列処理の変更（文字列長が必ずしも 1 とは限らなくなったため）、補助文字・結合文字の判定、StringInfo を使ったあるべき実装、SQL Server 2005 の照合順序による影響、Transact-SQL 標準文字列操作関数の問題などなど、日本語は日本人にしか理解できないため、JIS2004 対応については日本人が声を上げる必要があります。&lt;BR&gt;声を上げるには、何が問題で、どういう実装になっているからと正しい知識を身についている必要があります。&lt;BR&gt;ということで、JIS2004 のサポートするにはどうするかをハイレベルではありますが、OS 回りと SQL Server 2005 をターゲットに解説したいと思います。&lt;/P&gt;
&lt;P&gt;Java 、超漢字、Vine Linux などなどはこの問題をそうそうに対応していたのに、何をいまさらと思われる方もいるでしょう。&lt;BR&gt;また、文字の符号化について意識したことがない方は何で JIS2004 で大騒ぎしているんだろうと思われると思います。&lt;BR&gt;規格自体は 2000 年の国語審議会の答申に基づくもので、その後改訂されて 2004 年に Fix したものですが、2007 年になって大騒ぎするのは何でと思われると思います。&lt;/P&gt;
&lt;P&gt;すべては、OS 市場シェア No.1 の Microsoft が Vista に JIS2004 対応を決めたことに事の発端があります。&lt;BR&gt;しかしながら、散在するホワイトペーパーを読んで理解できる方はそうはいません。&lt;BR&gt;私も理解するのに相当苦労しました。&lt;BR&gt;ですので、皆さんには私が味わった苦労を少しでも軽減できるようにと、PASSJ アフタースクールでやる決心をしました。&lt;/P&gt;
&lt;P&gt;正式アナウンスは近々あると思いますが、6/16（土）に Microsoft 新宿サザンタワー（OST）セミナールームで&amp;nbsp;3 時間コースとしてやりたいと思います。&lt;BR&gt;現在、河端さんと調整中ですが、私と河端さんのコンビでたぶん 1 日コースになると思います。&lt;/P&gt;
&lt;P&gt;CLT イベントでは消化不良だった方、CLT イベントに参加できなかった方、CLT イベント自体を知らなかった PASSJ 会員の方、純粋に参加したいと思われている方々は PASSJ 事務局からの「PASSJ News 特別号」をお待ちください。&lt;BR&gt;登録開始時期や登録 URL が記載されたものが近々配信されると思います。&lt;BR&gt;また、大阪や他の都市でも希望が多ければ、地元のコミュニティ（個人、団体、NPO、自治体などなど）をご紹介いただいて、参加者・会場・現地でお手伝いいただける方の確保ができれば、どこでもいく覚悟はありますので、事務局もしくは私の BLOG の「連絡をする」で連絡いただいても構いませんので、地方の方はご検討ください。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23534.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23534.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23534.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23534.aspx</trackback:ping></entry><entry><title>[Windows Vista]Windows Vista の修正プログラム</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/05/30/23514.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/05/30/23514.aspx</id><created>2007-05-30T20:28:00Z</created><issued>2007-05-30T11:28:00+09:00</issued><modified>2007-05-30T20:28:00Z</modified><content type="text/html" mode="escaped">&lt;UL&gt;
&lt;LI&gt;Windows Vista の修正プログラム&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Windows Vista がリリースされてかれこれ 4 か月がたちますが、想像以上に安定性と互換性に問題があることがわかってきました。&lt;BR&gt;すでに Windows Vista をお使いの方は経験されているかと思いますが「コントロール パネル」の「システムとメンテナンス」にある「問題のレポートと解決策」の機能で膨大なレポートを送信している状態に見舞われたことがあるかと思います。&lt;BR&gt;「問題のレポートと解決策」の「他の問題についての情報」に解決策が表示されたりしますが、実際には氷山の一角でサポートのページを見るとかなりの修正プログラムが提供されています。&lt;BR&gt;&lt;A href="http://support.microsoft.com/search/default.aspx?catalog=LCID%3d1041&amp;amp;spid=11732&amp;amp;query=%u4fee%u6b63%u30d7%u30ed%u30b0%u30e9%u30e0&amp;amp;adv=&amp;amp;mode=r&amp;amp;cat=False&amp;amp;range=1-138"&gt;http://support.microsoft.com/search/default.aspx?catalog=LCID%3d1041&amp;amp;spid=11732&amp;amp;query=%u4fee%u6b63%u30d7%u30ed%u30b0%u30e9%u30e0&amp;amp;adv=&amp;amp;mode=r&amp;amp;cat=False&amp;amp;range=1-138&lt;/A&gt;&lt;BR&gt;必要な場合は、サポートに連絡して、修正プログラムの入手を行ってください。&lt;BR&gt;※自己責任です。&lt;BR&gt;&lt;BR&gt;ちなみに私のノート PC は&amp;nbsp;SONY VAIO type S SZ(VGN-SZ90PS)&amp;nbsp;で、SONY の Windows Vista の正式なサポートが受けられないので、かなり苦労しています。&lt;BR&gt;「問題のレポートと解決策」から「&lt;A href="http://support.microsoft.com/Default.aspx?kbid=929734"&gt;Windows Vista ベースのコンピュータをスリープ状態または休止状態から再開すると問題が発生することがある」&lt;/A&gt;が提示されましたが、他にも問題を抱えています。&lt;BR&gt;現在、「コンピュータのロック」を実行し、「ようこそ」画面から再度ログオンすると必ず Wireless LAN の電源が落ちて、ネットワークに接続するまでしばらく時間がかかる現象に悩まされています。ウイルスバスター 2007 を使っているので、そっちのせいかもしれませんが。&lt;BR&gt;また 1 回しか試していないので再現性はわかりませんが、Silverlights で高解像度の動画を再生していたら Wireless LAN が死に、再起動しても復旧しなかったのでルータ（NEC Aterm WR7600H）の電源のオフ/オンをして復旧させました。Windows XP では絶対に起こらない現象だったので Windows Vista とドライバあたりを疑っています。&lt;BR&gt;サポートページにも修正プログラムがあることは発見しているので、近いうちにサポートから修正プログラムを入手して試してみたいと思います。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23514.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23514.aspx</wfw:comment><slash:comments>4</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23514.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23514.aspx</trackback:ping></entry><entry><title>[SQL Server 2005]KB935356:SQL Server 2005 Service Pack 2 の累積的な更新プログラム パッケージ (ビルド 3161) について</title><link rel="alternate" type="text/html" href="http://blogs.sqlpassj.org/mitsugi/archive/2007/05/29/23512.aspx" /><id>http://blogs.sqlpassj.org/mitsugi/archive/2007/05/29/23512.aspx</id><created>2007-05-29T23:42:00Z</created><issued>2007-05-29T14:42:00+09:00</issued><modified>2007-05-29T23:42:00Z</modified><content type="text/html" mode="escaped">&lt;P&gt;米田さんが書かれていた&lt;BR&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/yoneda/archive/2007/05/27/23495.aspx"&gt;Hotfix、累積的updateのKBを指定してのonline request (Web Form依頼、email返信、download link )による入手法(SQL Server 2005 SP2向累積的update build 3161対応)&lt;/A&gt;&lt;BR&gt;KB935356 を正式ルート（サポート経由）で入手しました。&lt;BR&gt;&lt;A href="http://support.microsoft.com/default.aspx/KB/935356"&gt;http://support.microsoft.com/default.aspx/KB/935356&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;まぁ、米田さんの書かれているとおり、無償です。&lt;BR&gt;ただし、免責事項に同意する必要があります。&lt;BR&gt;電話での同意ということですので、そんなに心配することはありません。&lt;BR&gt;KB935356 を入手に必要なのは、文書番号（935356）・氏名・連絡先電話番号・ダウンロード先 URL 通知メールアドレス・SQL Server 2005 使用エディション・プラットフォーム（x86/x64）と先に書いた免責事項に同意することです。&lt;BR&gt;あと、サポートが SR 番号を口頭でいうので、それをメモするものが必要です。&lt;BR&gt;SR 番号は何か問い合わせをするときに必ず必要になるので、紛失しないようにしてください。&lt;BR&gt;また、サポートからメールを送信するときに迷惑メールフィルタの設定を確認してくださいといわれますので、対象のメールアドレスからメールが迷惑メールフォルダに移動されないように除外の設定をしてください。&lt;/P&gt;
&lt;P&gt;問い合わせした時間によりますが、数時間中にダウンロードの URL を送付してくれます。&lt;BR&gt;ダウンロードサイズは 92.9MB（x86） です。&lt;BR&gt;展開するとき、ダウンロードの URL を送付されるメールの中に記載されているパスワードを入力してください。&lt;BR&gt;展開すると hotfix.txt と SQLServer2005-KB935356-x86-ENU.exe が展開されます。&lt;BR&gt;あとは、Service Pack などの適用と同じく SQLServer2005-KB935356-x86-ENU.exe を実行するだけです。&lt;BR&gt;インストールされている全インスタンスにすべて適用してくれます。&lt;BR&gt;適用時間はインスタンス数やインストールしているサービスの数に依存します。&lt;BR&gt;私の場合は、3 つの SQL Server 2005 Developer Edition のインスタンス（すべてのオプションを選択）と SQL Server 2005 Express with Advanced Services Service Pack 2 がインストールされていますので、かなり時間がかかりました。&lt;/P&gt;
&lt;P&gt;なお、本番環境に適用する場合、必ずテスト系で十分なテスト（テストケースすべてを実行）をして、問題が発生しないか確認した上で、適用してください。&lt;BR&gt;もし、問題が発生した場合は、有償サポートで正式なサポートを受けてください。&lt;BR&gt;ケースによっては HotFix を開発が必要になると思われますので、かなり時間がかかることを覚悟する必要があるでしょう。&lt;BR&gt;&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/mitsugi/aggbug/23512.aspx" width = "1" height = "1" /&gt;</content><wfw:comment>http://blogs.sqlpassj.org/mitsugi/comments/23512.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/mitsugi/comments/commentRss/23512.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/mitsugi/services/trackbacks/23512.aspx</trackback:ping></entry></feed>