<rss version="2.0" 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/"><channel><title>DEV Tips</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/category/173.aspx</link><description>DEV Tips</description><managingEditor>河端善博</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>河端善博</dc:creator><title>データベース開発者の方は、Connection, Command, Reader などの Dispose,Close に注意</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/12/18/24392.aspx</link><pubDate>Tue, 18 Dec 2007 11:52:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/12/18/24392.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/24392.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/12/18/24392.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/24392.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/24392.aspx</trackback:ping><description>&lt;P&gt;これは、先日の PASSJ アフタースクールの私のセッションでお話させていただきました。&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;データベース開発者の方々は、オブジェクトの Dispose (ディスポーズ), Close (クローズ) を確実に行ってください。&lt;BR&gt;忘れた場合、データベースへの接続ができなくなります。&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;ここ一週間に 2 つのシステムで、この問題を確認しました。&lt;BR&gt;いずれもプログラム経験の十分にある方々によるミスでした。&lt;BR&gt;また、私も先日、DirectoryEntry オブジェクトで同様なミスをしました。&lt;/P&gt;
&lt;P dir=ltr&gt;&lt;STRONG&gt;【概要】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;　SqlConnection, SqlCommand, SqlDataReader, SqlDataAdapter, DbConnection, DbCommand, DbDataReader, DbDataAdapter&amp;nbsp;などのオブジェクトは、利用終了後、かならず Close または、Dispose メソッドを呼ぶ必要があります。&lt;BR&gt;　Close または、Dispose メソッドを呼び出さない場合、データベースへ接続できないという例外が発生します。&lt;BR&gt;　確実に Close または、Dispose メソッドを呼び出すには、C# の場合 using ステートメント、VB の場合、Using ステートメントの利用をお勧めします。&lt;/P&gt;
&lt;P dir=ltr&gt;&lt;STRONG&gt;【詳細】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;　まず、各オブジェクトのヘルプにて、メソッドを確認してください。&lt;BR&gt;　Close または、Dispose メソッドがあります。&lt;/P&gt;
&lt;P dir=ltr&gt;　次に、呼び出さない場合、どのようになるかを考えます。&lt;/P&gt;
&lt;P dir=ltr&gt;　.NET Framework では、利用しなくなったオブジェクトが利用するメモリやリソースは、一定期間ごとに自動的に回収されます。この機構をガベージコレクタといいます。&lt;BR&gt;　逆に、ガベージコレクタが回収するまでは、メモリやリソースを占有したままとなります。&lt;/P&gt;
&lt;P dir=ltr&gt;　SqlConneciton などのオブジェクトは、データベースへの接続を行います。&lt;BR&gt;　データベースへの接続は、Close、または Dispose メソッドを呼びだすと解放します。&lt;BR&gt;　逆に、メソッドを呼び出さない場合、カベージコレクタが回収するまで、確保した状態となります。&lt;/P&gt;
&lt;P dir=ltr&gt;　.NET Framework は、データベースへの接続を効率的に行うために、コネクションプールという構造を持っています。&lt;BR&gt;　コネクションプールは、データベース接続を解放したときに、実際にデータベースとの接続を切断せず、一定時間、保持しておきます。再度、データベース接続を行うときに、データベース接続文字列が同じであれば、保持している接続を再利用します。&lt;BR&gt;　もし、SqlConnection などのオブジェクトが Close, Dispose されない場合、コネクションプールを使い切ることになります。コネクションプールに保持する接続数は、制限があります。&lt;/P&gt;
&lt;P dir=ltr&gt;　このため、Close, Dispose を行わない処理を繰り返した場合、コネクションプールの接続を使い切り、データベース接続ができなくなります。&lt;/P&gt;
&lt;P dir=ltr&gt;　データベースへの接続状況は、SQL Server の管理ツールや、sp_who コマンド、パフォーマンスモニタなどで確認することができます。&lt;/P&gt;
&lt;P dir=ltr&gt;&lt;STRONG&gt;【推薦】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P dir=ltr&gt;　確実に Close, Dispose を行うには、C# の using ステートメント、VB の Using ステートメントをお勧めします。&lt;/P&gt;
&lt;P dir=ltr&gt;　例:&lt;/P&gt;
&lt;P dir=ltr&gt;　　using (SqlConnection connection = new SqlConnection("....")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (SqlCommand command = new SqlCommand("select name from table1", connection))&lt;BR&gt;　　{&lt;BR&gt;　　　connection.Open()&lt;BR&gt;　　}&lt;/P&gt;
&lt;P dir=ltr&gt;　プログラムの処理上、using が利用できない場合は、try, finally を利用して例外発生時を含め、必ず Dispose, Close が行われるようにしてください。&lt;BR&gt;　また、ループの中で、Dispose, Close を持つオブジェクトを new する場合は、特にご注意ください。&lt;/P&gt;
&lt;P dir=ltr&gt;ご参考になればと思います。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/24392.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>CompareInfo : XP, Vista 比較</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23865.aspx</link><pubDate>Fri, 27 Jul 2007 18:46:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23865.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/23865.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23865.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/23865.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/23865.aspx</trackback:ping><description>&lt;P&gt;System.Globalization.CompareInfo の一覧作成を Windows XP SP2, Windows Vista で行ってみました。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【環境】&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Windows XP SP2 日本語版&lt;/LI&gt;
&lt;LI&gt;Windows Vista Ultimate Edition 日本語版&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;【結果】&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;CompareInfo 数: XP 237 個、Vista 287 個&lt;/LI&gt;
&lt;LI&gt;変更: 13 個&lt;/LI&gt;
&lt;LI&gt;追加: 50 個&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;【変更】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　Windows XP SP2 から Vista で Name が変更になった CompareInfo&lt;/P&gt;
&lt;P&gt;
&lt;TABLE style="WIDTH: 190pt; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 width=252 border=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="WIDTH: 54pt" width=72&gt;
&lt;COL style="WIDTH: 68pt; mso-width-source: userset; mso-width-alt: 2880" span=2 width=90&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl66 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 700; FONT-SIZE: 11pt; BACKGROUND: black; BORDER-LEFT: black 0.5pt solid; WIDTH: 54pt; COLOR: white; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: black none" width=72 height=18&gt;LCID&lt;/TD&gt;
&lt;TD class=xl66 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 700; FONT-SIZE: 11pt; BACKGROUND: black; BORDER-LEFT: #f0f0f0; WIDTH: 68pt; COLOR: white; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: black none" width=90&gt;XP&lt;/TD&gt;
&lt;TD class=xl66 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 700; FONT-SIZE: 11pt; BACKGROUND: black; BORDER-LEFT: #f0f0f0; WIDTH: 68pt; COLOR: white; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: black none" width=90&gt;Vista&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x65&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;div&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;dv&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x42c&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;az-AZ-Latn&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;az-Latn-AZ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x443&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;uz-UZ-Latn&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;uz-Latn-UZ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x465&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;div-MV&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;dv-MV&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x46c&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;ns-ZA&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;nso-ZA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x81a&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;sr-SP-Latn&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;sr-Latn-CS&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x82c&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;az-AZ-Cyrl&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;az-Cyrl-AZ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x843&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;uz-UZ-Cyrl&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;uz-Cyrl-UZ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0xc1a&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;sr-SP-Cyrl&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;sr-Cyrl-CS&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x141a&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;bs-BA-Latn&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;bs-Latn-BA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x181a&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;sr-BA-Latn&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;sr-Latn-BA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x1c1a&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; BORDER-LEFT: #f0f0f0; BORDER-BOTTOM: #f0f0f0; BACKGROUND-COLOR: transparent"&gt;&lt;FONT face="ＭＳ Ｐゴシック"&gt;sr-BA-Cyrl&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #f0f0f0; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;sr-Cyrl-BA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: black 0.5pt solid; COLOR: black; BORDER-BOTTOM: #95b3d7 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none" height=18&gt;0x2409&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #95b3d7 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;en-CB&lt;/TD&gt;
&lt;TD class=xl65 style="BORDER-RIGHT: #95b3d7 0.5pt solid; BORDER-TOP: black 0.5pt solid; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #dbe5f1; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #95b3d7 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #DBE5F1 none"&gt;en-029&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【追加】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE style="WIDTH: 131pt; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 width=175 border=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="WIDTH: 54pt" width=72&gt;
&lt;COL style="WIDTH: 77pt; mso-width-source: userset; mso-width-alt: 3296" width=103&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #d99795 0.5pt solid; FONT-WEIGHT: 700; FONT-SIZE: 11pt; BACKGROUND: #c0504d; BORDER-LEFT: #d99795 0.5pt solid; WIDTH: 54pt; COLOR: white; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #C0504D none" width=72 height=18&gt;LCID&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #d99795 0.5pt solid; FONT-WEIGHT: 700; FONT-SIZE: 11pt; BACKGROUND: #c0504d; BORDER-LEFT: #f0f0f0; WIDTH: 77pt; COLOR: white; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #C0504D none" width=103&gt;Name&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x417&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;rm-CH&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x428&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;tg-Cyrl-TJ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x42e&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;hsb-DE&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x442&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;tk-TM&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x445&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;bn-IN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x448&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;or-IN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x44c&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ml-IN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x44d&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;as-IN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x451&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;bo-CN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x453&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;km-KH&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x454&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;lo-LA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x45b&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;si-LK&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x45d&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;iu-Cans-CA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x45e&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;am-ET&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x461&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ne-NP&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x462&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;fy-NL&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x463&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ps-AF&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x464&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;fil-PH&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x468&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ha-Latn-NG&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x46a&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;yo-NG&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x46d&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ba-RU&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x46e&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;lb-LU&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x46f&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;kl-GL&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x470&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;ig-NG&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x478&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ii-CN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x47a&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;arn-CL&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x47c&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;moh-CA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x47e&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;br-FR&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x480&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ug-CN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x482&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;oc-FR&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x483&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;co-FR&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x484&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;gsw-FR&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x485&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;sah-RU&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x486&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;qut-GT&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x487&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;rw-RW&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x488&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;wo-SN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x48c&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;prs-AF&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x82e&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;dsb-DE&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x83c&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;ga-IE&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x845&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;bn-BD&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x850&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;mn-Mong-CN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x85d&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;iu-Latn-CA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x85f&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;tzm-Latn-DZ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x201a&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;bs-Cyrl-BA&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x4009&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;en-IN&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x4409&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;en-MY&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x4809&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;en-SG&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x540a&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;es-US&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none" height=18&gt;0x1007f&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BACKGROUND: #f2dddc; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none; mso-pattern: #F2DDDC none"&gt;x-IV_mathan&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 13.5pt" height=18&gt;
&lt;TD style="BORDER-RIGHT: #f0f0f0; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #d99795 0.5pt solid; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; HEIGHT: 13.5pt; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none" height=18&gt;0x40411&lt;/TD&gt;
&lt;TD style="BORDER-RIGHT: #d99795 0.5pt solid; BORDER-TOP: #f0f0f0; FONT-WEIGHT: 400; FONT-SIZE: 11pt; BORDER-LEFT: #f0f0f0; COLOR: black; BORDER-BOTTOM: #d99795 0.5pt solid; FONT-FAMILY: 'ＭＳ Ｐゴシック'; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; text-underline-style: none; text-line-through: none"&gt;ja-JP_radstr&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/23865.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>日本語関連 CompareInfo と、部首画数での並べ替え</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23864.aspx</link><pubDate>Fri, 27 Jul 2007 15:51:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23864.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/23864.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/27/23864.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/23864.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/23864.aspx</trackback:ping><description>&lt;P&gt;Windows Vista から、LCID が追加されています。&lt;BR&gt;まだ、情報不足ですが、とりいそぎ、まとめてみます。&lt;/P&gt;
&lt;P&gt;【CompareInfo : ja-JP 関係】&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;0x411 = ja-JP&lt;/LI&gt;
&lt;LI&gt;0x10411 = ja-JP_unicod&lt;/LI&gt;
&lt;LI&gt;0x40411 = ja-JP_radstr&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;System.Globalization.CompareInfo クラスで扱える LCID のうち、Name が "ja-JP" で始まるものです。&lt;BR&gt;CompareInfo は、文字列の並べ替え順を定義します。&lt;/P&gt;
&lt;P&gt;0x411 (ja-JP) は、従来の ShiftJIS による並べ替えです。&lt;BR&gt;0x10411 (ja-JP_unicod) は、Unicode による並べ替え ? &lt;BR&gt;0x40411 (ja-JP_radstr) は、部首画数順の並べ替えです。Windows XP ではサポートされません。&lt;/P&gt;
&lt;P&gt;ja-JP_radstr のradstr は、Radical Stroke の略と思われます。&lt;BR&gt;たとえば、zh-HK_stroke など、_stoke のつく CompareInfo は、4 個あります。&lt;/P&gt;
&lt;P&gt;CultureInfo の 0x411, 0x10411, 0x40411 は、CompareInfo プロパティの値以外は、すべて同じ値になります。&lt;/P&gt;
&lt;P&gt;Vista の並べ替え順を 0x40411 に設定するには、下記の手順でコントロールパネルから行います。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【並べ替え順の変更方法】&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;「コントロールパネル」を開きます。&lt;/LI&gt;
&lt;LI&gt;「時計、言語、および地域」を選択します。&lt;/LI&gt;
&lt;LI&gt;「地域と言語のオプション」を選択します。&lt;/LI&gt;
&lt;LI&gt;ボタン「この形式のカスタマイズ」を選択します。&lt;BR&gt;ダイアログが開きます&lt;/LI&gt;
&lt;LI&gt;タブ「並べ替え」を選択します&lt;BR&gt;「並び替えメソッドを選択してください」が表示されます。&lt;BR&gt;メソッドは、「XJIS」と「部首/画数」が選択できます。&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;上記のメソッドと CompareInfo の対応は次のようになります。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【コントロールパネル　並べ替え順と、CompareInfo】&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;XJIS = LCID:0x411 (ja-JP)&lt;/LI&gt;
&lt;LI&gt;部首/画数 = LCID:0x40411 (ja-JP_radstr)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;変更をすると、すぐに反映されます。&lt;BR&gt;試してみるには、漢字を含む名前のファイルを作成し、エクスプローラなどで並べ替えを実施します。&lt;BR&gt;コマンドプロンプトにて DIR /ON としても並べ替えの変化を確認することができます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【Excel の並べ替え】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;ただし、Excel などの並べ替えには影響ししません。&lt;BR&gt;Excel は、標準では、ふりがなによる並べ替えを行います。&lt;BR&gt;ふりがながない場合は、たぶん XSJIS かと。(不明)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【0x10000, 0x20000, 0x30000, 0x40000】&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;0x10000: _mathan, _honeb, _technl, _unicod, _modern&lt;/LI&gt;
&lt;LI&gt;0x20000 : _stroke 画数順&lt;/LI&gt;
&lt;LI&gt;0x30000 : _pronun 発音 (pronuncation) 順&lt;/LI&gt;
&lt;LI&gt;0x40000 : _radstr 部首画数順&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;ja-JP の0x20411, 0x30411 は、ありません。&lt;BR&gt;_radstr をもつ言語は、ja-JP のみです。&lt;/P&gt;
&lt;P&gt;とりいぞき、ここまで。&lt;BR&gt;部首画数順とは ? SQL Server 照合順序/Collation との対応は ? &lt;BR&gt;など今後しらべていければと思います。&lt;/P&gt;
&lt;P&gt;※今、0 - 0xfffff までの LCID で、GetCompareInfo しているところ...&lt;BR&gt;　たぶん 0x40411 ja-JP_radstr が最後かな&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/23864.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>JIS2004 は続くよ ... (岸さんのセッションを聞いて)</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/20/23837.aspx</link><pubDate>Fri, 20 Jul 2007 19:12:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/20/23837.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/23837.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/20/23837.aspx#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/23837.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/23837.aspx</trackback:ping><description>&lt;P&gt;昨日、セミナー &lt;A href="http://www.sqlpassj.org/semievent/semi/070719_Beta3/"&gt;【PASSJ 向け Windows Server 2008 Beta3 セミナー in 東京】&lt;/A&gt;に参加しました。&lt;/P&gt;
&lt;P&gt;夕方からの長時間のセミナーで、さらに 1週間前からの告知であったにもかかわらず、80 名弱の方々にご参加いただきました。&lt;BR&gt;また、マイクロソフトの Windows Server チーム、SQL Server チームの方々も来ていただき、最後の Q&amp;amp;A まで丁寧に対応していただけました。&lt;BR&gt;あらためて、担当チームの方々、講師の方々に感謝させていただきたいと思います。&lt;/P&gt;
&lt;P&gt;参加された、みなさまいかがでしたでしょうか。ぜひ、アンケートやメーリングリストなどに、気づいたことなど、どんどんご連絡いただければと思います。&lt;BR&gt;実際 18:00-21:30 までの長時間のセミナーで、たぶん、終わった時には、みなさんぐったりではなかったかと。&lt;/P&gt;
&lt;P&gt;さて、今回の岸さんのセミナーに感動して、改めて、残りの課題をまとめてみました。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【JIS2004 についての残る課題】&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;フォントの対応状況の整理&lt;/LI&gt;
&lt;LI&gt;フォントリンクの整理&lt;/LI&gt;
&lt;LI&gt;Office の対応状況の整理&lt;/LI&gt;
&lt;LI&gt;.NET の対応状況の整理&lt;/LI&gt;
&lt;LI&gt;Internet Explorer の対応状況の整理&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;まず、フォントについて、より詳しい整理は、正しく JIS2004 に対応する上で必須になると思います。&lt;BR&gt;特に、アドビとの関係、各フォントです。&lt;BR&gt;多くのフォントメーカーは、アドビのフォント規格でフォント作成をされているようです。&lt;BR&gt;また、Vista や Office に標準搭載されるフォントについても、整理された情報が必要です。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;HGPゴシックM など HG ... は、JIS2004 の字形ではない. U+8FBB が一点シンニョウになる&lt;/LI&gt;
&lt;LI&gt;SimSun の JIS2004 字形版は SimSun-ExtB.&lt;/LI&gt;
&lt;LI&gt;MingLiU の JIS2004 字形版は MingLiU_HKSCS-ExtB&lt;/LI&gt;
&lt;LI&gt;-ExtB は、結合文字も正しく表示 (ト゜ = U+30C8, U+309A)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;次に、フォントリンクの動作についても、現状とあるべき姿が必要になると思います。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Arial Unicode MS の U+8FBB は、一転シンニョウ ?&lt;/LI&gt;
&lt;LI&gt;ミッシングフォントが、どのフォントにマップされているのか、わからない&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Office については、当然、SQL Server のクライアントとして整理が必要ですよね。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;LEN 関数は、補助文字/結合文字を 2 文字とみる&lt;/LI&gt;
&lt;LI&gt;LENB関数は、どうも SJIS に変換してからバイト数を計算している ?&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;SJIS コードのない文字を LENB でみると、1 (バイト) として表現されます。&lt;BR&gt;たとえば、白将棋の文字 U+2616 は、1 となります。&lt;BR&gt;ト゜(U+30C8, U+309A) の LENB の値は、 ? ... ぜひ、試してみてください。&lt;/P&gt;
&lt;P&gt;.NET での対応状況も、もちろん必要ですね。&lt;/P&gt;
&lt;P&gt;Internet Explorer での対応状況も、ぜひほしいところです。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;JavaScript, VBScript は ?&lt;/LI&gt;
&lt;LI&gt;フォントリンクおかしくない ?&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;言語での対応は当然として、フォントリンクは、Office など実装が違うのは困りものです。&lt;BR&gt;たとえば、U+21D8C のメイリオは、IE 上で□に表示されます。Excel 2007では表示されているのに。&lt;/P&gt;
&lt;P&gt;最後に、優先度の高いお願いを考えてみました。&lt;/P&gt;
&lt;P&gt;メイリオと、MS ゴシック/明朝/MS UI Gothic V5.0 の収容フォントは同じにしてほしい。&lt;BR&gt;これを、わける理由が考え付きません。&lt;BR&gt;Adobe の規格とも調整が必要になると思いますが、ここを同じにできれば、フォントの現状の一部は、すっきりすると思います。&lt;BR&gt;つまり、英文系のフォント + 日本語フォント + 中国語フォント というシンプルな形へ。&lt;/P&gt;
&lt;P&gt;以上です。&lt;BR&gt;このほかにも、ATOK などの IME, Java, 他の DB連携、収容文字が含まれているかどうかの判定、正規化などの話もありますが、またの機会へ。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/23837.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>SQLCLR のプログラムソースをデータベースに登録したくない場合 : 「配置オプション」-「コードの配置」をオフ</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/03/23658.aspx</link><pubDate>Tue, 03 Jul 2007 12:09:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/03/23658.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/23658.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/07/03/23658.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/23658.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/23658.aspx</trackback:ping><description>&lt;P&gt;Visual Studio 2005 で SQLCLR を開発し、データベースにアセンブリを配置すると、データベースには、アセンブリだけでなく、C#やVBのプログラムソースコードも配置されます。&lt;/P&gt;
&lt;P&gt;プログラムソースコードを配置したくない場合には、次の手順で設定を変更します。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【プログラムソースコードを配置しない設定】&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;プロジェクトのプロパティの画面を開きます。&lt;/LI&gt;
&lt;LI&gt;タブ「配置」を選択します&lt;/LI&gt;
&lt;LI&gt;項目「構成」を「Release」にします。&lt;/LI&gt;
&lt;LI&gt;項目「配置オプション」-「コードの配置」のチェックをオフにします。&lt;/LI&gt;
&lt;LI&gt;保存します。&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;設定を変更後、配置しなおすことにより、アセンブリのみデータベースに登録されるようになります。&lt;/P&gt;
&lt;P&gt;プログラムソースコードが、データベース上に登録されている様子は、次のクエリーにて確認することができます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【データベース上のアセンブリ関連のファイル一覧を表示するクエリー】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　select * from sys.assembly_files&lt;/P&gt;
&lt;P&gt;列 「name」にファイル名が表示されます。「StringSplit.cs」などのプログラムソースコードのファイル名を確認することができます。続いて、ファイルの内容を表示します。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【データベース上のプログラムソースの内容を表示するクエリー】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; select convert(xml, content) from sys.assembly_files where name like 'StringSplit.cs'&lt;/P&gt;
&lt;P&gt;プログラムのソースコードを完全に表示することができます。&lt;BR&gt;また、SQL Profiler を利用して、Visual Studio 2005 の配置処理の T-SQL を確認することでも、ソースコードがデータベース上に登録されていることを確認することができます。&lt;/P&gt;
&lt;P&gt;本番環境など、ソースコードをデータベース上に置いておく必要がない場合は、配置方法にご注意いただければと思います。&lt;/P&gt;
&lt;P&gt;なお、この投稿は、Books Online 英語版につけられたコメントを元に、検証し、まとめました。&lt;/P&gt;
&lt;P&gt;　項目: &lt;A href="http://msdn2.microsoft.com/en-us/library/ms189612.aspx"&gt;Permissions of Fixed Database Roles&lt;/A&gt;&lt;BR&gt;　コメント: &lt;SPAN class=wkViewerHeader_Title id=ctl00_LibFrame_WikiCont_ctl00_ccViewerHeader_Title&gt;Be careful with GRANT VIEW DEFINITION and the Visual Studio SQLCLR project type&lt;/SPAN&gt; &lt;BR&gt;　著者:&amp;nbsp;&amp;nbsp;ktegels_DevelopMentor&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/23658.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>照合順序 SQL_Latin1_General_Pref_CP437_CI_AS など「Pref」　は、遅い</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/06/29/23650.aspx</link><pubDate>Fri, 29 Jun 2007 16:17:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/06/29/23650.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/23650.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/06/29/23650.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/23650.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/23650.aspx</trackback:ping><description>&lt;P&gt;一部の照合順序が、遅いと問題について検証しました。&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;結果: _Pref_ を含む照合順序をソート対象にした場合、遅い&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;これは、来月 2007年7月に出版される Kalen さん著、熊澤さん監修の書籍「Inside SQL Server 2005&amp;nbsp;ストレージエンジン編」の P.15, P.18 に出てくる「大文字優先」「uppercase preference」のパフォーマンス上の問題を検証したものです。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【キーワード】&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;大文字優先&lt;/LI&gt;
&lt;LI&gt;uppercase preference&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;　照合順序の属性の一つです。&lt;BR&gt;　ソート時に、小文字よりも、大文字を優先させます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【_Pref_を含む照合順序】&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;SQL_AltDiction_Pref_CP850_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Danish_Pref_CP1_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Icelandic_Pref_CP1_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Latin1_General_Pref_CP1_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Latin1_General_Pref_CP437_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Latin1_General_Pref_CP850_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_Scandinavian_Pref_CP850_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_SwedishPhone_Pref_CP1_CI_AS&lt;/LI&gt;
&lt;LI&gt;SQL_SwedishStd_Pref_CP1_CI_AS&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;　大文字優先の属性を持つ、照合順序の名前には、「_Pref_」が含まれます。&lt;/P&gt;
&lt;P&gt;　select * from ::fn_helpcollations() where name like '%Pref%'&lt;BR&gt;　によって、確認することができます。&lt;/P&gt;
&lt;P&gt;　上記のように、SQL照合順序にのみ、Pref&amp;nbsp; 付きは存在します。&lt;BR&gt;　また、かならず、「_CI_AS」 が付きます。&lt;BR&gt;　(大文字小文字を区別しない, アクセントを区別する) &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【Perf 指定は、char, varchar, text にのみ影響】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　Pref 指定は、Unicode を扱うデータ型には影響しません。&lt;BR&gt;　char, varchar, text など、Unicode ではないデータ型にのみ影響します。&lt;/P&gt;
&lt;P&gt;　たとえば、::fn_helpcollations() の出力は次のようになります。&lt;/P&gt;
&lt;P&gt;　name:&amp;nbsp;&lt;BR&gt;　　SQL_Latin1_General_Pref_CP437_CI_AS&lt;BR&gt;　description: &lt;BR&gt;　　Latin1-General, case-insensitive, accent-sensitive, kanatype-insensitive, width-insensitive for Unicode Data, &lt;BR&gt;　　SQL Server Sort Order 33 on Code Page 437 for non-Unicode Data&lt;/P&gt;
&lt;P&gt;　Unicode Data の場合と、non-Unicode Data の場合で、処理が違っていますね&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【遅い、とは】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　select name from t1 order by name&lt;/P&gt;
&lt;P&gt;　テーブル t1 の列 name にインデックスが設定されている場合、上記クエリーの実行プランでは「ソート」を行いません。&lt;BR&gt;　インデックスがあるため、列 name は、ソート済みのためです。&lt;/P&gt;
&lt;P&gt;　しかし、列 name の照合順序が SQL_Latin1_General_Pref_CP437_CI_AS の場合、実行プランで「ソート」が発生します。&lt;BR&gt;　このために、遅くなります。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;【後記】&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　Inside SQL Server 2005 ストレージエンジン編を読み進めたところで、この話が出てきました。&lt;BR&gt;　しかし、「大文字優先」というキーワードが何を意味するのか、わかりませんでした。&lt;/P&gt;
&lt;P&gt;　Books Online を検索しても、それらしい記事が見つかりません。&lt;BR&gt;　なんとか Kalen さんが、問題視している点を明確にするため、延々とこの問題を調べてしまいました。&lt;/P&gt;
&lt;P&gt;　羽田空港での搭乗待ちのときに調べはじめ、関空までの飛行中、関空快速で揺られながら。。&lt;BR&gt;　電車を降りるまでには、検証が終わり、なにより。&lt;/P&gt;
&lt;P&gt;　こんなペースで、この本を読んでいたら、読み終わりそうにないなぁ、と思いつつ。&lt;/P&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/23650.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>一時テーブルをビューに、ビューを一時テーブルにするチューニング</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20454.aspx</link><pubDate>Wed, 17 Jan 2007 22:18:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20454.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/20454.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20454.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/20454.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/20454.aspx</trackback:ping><description>&lt;P&gt;一時テーブル、ビューをチューニングです。&lt;/P&gt;
&lt;P&gt;一時テーブルを利用しているシステムをビューで置き換えて、実行プランや処理時間を計測します。&lt;BR&gt;逆に、ビューを利用しているシステムを一時テーブルに置き換えて、確認します。&lt;/P&gt;
&lt;P&gt;SQL Server 
は多くの実システムの経験が盛り込まれていますので、実際のデータで調査してみると、置換えによってパフォーマンスやシステム負荷が軽減できる場合があります。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;■例: 一時テーブルから ビューへ変更&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
  &lt;LI&gt;一時テーブルが、その後のクエリーから JOIN や サブクエリーで利用される場合&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;　一時テーブルが、他のクエリーから JOIN 
などによって参照される場合、一時テーブルに対して適切なインデックスが期待されます。しかし、一時テーブルにインデックスや統計情報の作成は、一定の時間が必要となります。一時テーブルにプライマリキーを設定した場合も同様です。&lt;BR&gt;　これをビューに置き換えた場合、元のテーブルまたはビューに設定してあるインデックスを利用できますので、一時テーブルの作成時間+インデックスの作成時間よりも高速化することが期待できます。&lt;BR&gt;　インデックス付きビューにより、事前に一時テーブルに相当する内容を、インデックスとして作成しておける場合、さらに高速化が期待できます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;■例:ビューから一時テーブルへ変更&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
  &lt;LI&gt;カーソルで参照している場合&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;　ビューを参照する時間が長くなる場合です。カーソルで参照される場合は、カーソルのループ処理の中で、元のテーブルへのロックを最小限にするために、一時テーブルにするほうがいい場合があります。&lt;/P&gt;
&lt;P&gt;実際のデータベースで試してみていただければと思います。&lt;/P&gt;
&lt;P&gt;実システムにおいて、一時テーブルからビューへ変更することで、20 % 程度の改善を行うことができました。&lt;/P&gt;&lt;!-- Powered by IMHO 1.3 (EN) Instant Blogger Copyright (c) 2005 A.Boschin - http://www.imhoproject.org --&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/20454.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>ビューの中の計算を、計算列,インデックス付きでチューニング</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20453.aspx</link><pubDate>Wed, 17 Jan 2007 21:53:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20453.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/20453.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/17/20453.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/20453.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/20453.aspx</trackback:ping><description>&lt;FONT face=Verdana size=2&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;CREATE&amp;nbsp;VIEW&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;[&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;View1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;]&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;AS&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #ff00ff; FONT-FAMILY: Courier New"&gt;RIGHT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;string1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;,&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;2&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;) as [s]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;from&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table2&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;&lt;/FONT&gt;
&lt;p&gt;このようなビューをチューニングします。&lt;/p&gt;
&lt;P&gt;ビュー内で計算している列がある場合、計算列または、インデックス付きビューにすることによりチューニングすることができます。&lt;/P&gt;
&lt;P&gt;いずれの修正方法も、列の値は、クエリー実行時に計算されるのではなく、元のレコードの更新のタイミングで計算されます。さらに、列に適切なインデックスを設定することもできます。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;■有効なシナリオ&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
  &lt;LI&gt;参照処理に対して、更新処理の少ないテーブル (マスターテーブルなど)&lt;/LI&gt;
  &lt;LI&gt;列の計算に時間のかかる場合&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;修正は、簡単にできます。&lt;/P&gt;
&lt;P&gt;計算列の場合、元のテーブルに計算列を追加した後、ビュー内の列の参照先を、作成した計算列にします。なお、SQL Server 2005 
の場合、ビューを修正する必要はありません。ビューを修正しなくても、計算式がビューと計算列で同じ場合、実行プランでは計算列が自動的に採用されます。&lt;/P&gt;
&lt;P&gt;インデックス付きビューの場合、ビューをスキーマバインディングに設定し、ビューに対してインデックスを設定します。&lt;/P&gt;
&lt;P&gt;既存のビューを見直してみるといいですね。&lt;/P&gt;&lt;!-- Powered by IMHO 1.3 (EN) Instant Blogger Copyright (c) 2005 A.Boschin - http://www.imhoproject.org --&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/20453.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>WHERE 句での数値定数のデータ型指定によるチューニング (SQL Server 2000)</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20389.aspx</link><pubDate>Wed, 10 Jan 2007 15:57:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20389.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/20389.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20389.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/20389.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/20389.aspx</trackback:ping><description>&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;SELECT&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;FROM&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table3&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;WHERE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;99999&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;
&lt;P&gt;このようなクエリーのチューニングです。&lt;BR&gt;n5 のデータ型は、numeric(5, 0) です。&lt;/P&gt;
&lt;P&gt;SQL Server 2000 で対応が必要です。&lt;BR&gt;SQL Server 2005 では、特に問題なさそうです。&lt;/P&gt;
&lt;P&gt;■問題&lt;/P&gt;
&lt;P&gt;　インデックススキャンが発生してしまう。&lt;/P&gt;
&lt;P&gt;n5 にインデックス IX_Table3_n5 (n5) を作成している場合でも、インデックスシークではなく、スキャンが発生します。&lt;/P&gt;
&lt;P&gt;■原因&lt;/P&gt;
&lt;P&gt;　数値定数が smallint や int 
と認識されてしまうため、データ型の変換が発生し、結果としてインデスックススキャンが発生。&lt;BR&gt;　数値定数は、32767 までの場合、smallint, 
2147483647 までの場合 int と解釈されます。&lt;BR&gt;　int と認識された場合、numeric(5,0) 
より値範囲が大きくなるため、スキャンが発生することになります。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;■例&lt;/STRONG&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #008000; FONT-FAMILY: Courier New"&gt;--&amp;nbsp;インデックスシーク&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;select&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;from&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table3&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;where&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;&lt;STRONG&gt;32767&lt;/STRONG&gt;&lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #008000; FONT-FAMILY: Courier New"&gt;--&amp;nbsp;インデックススキャン&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;select&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;from&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table3&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;where&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;&lt;STRONG&gt;32768&lt;/STRONG&gt;&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;
&lt;P&gt;&lt;STRONG&gt;■対策&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;　WHERE 句内のnumericデータ型、decimalデータ型と比較する数値定数は、明示的に変換を行ってから使うようにします。&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;SELECT&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;FROM&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table3&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;WHERE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;n5&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #ff00ff; FONT-FAMILY: Courier New"&gt;convert&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;numeric&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;5&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;,&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;0&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;),&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;99999&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;)&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;
&lt;P&gt;特に 32768 ～ 2147483647 にかかる値範囲となる numeric(5,0) ～ numeric(9,0) 
の場合に対応が必要となります。&lt;/P&gt;
&lt;P&gt;なお、numeric(10,0) 以上の場合は、int 
よりも値範囲が大きいので、データ型の変換は発生しますが、スキャンではなく、シークにより処理されます。&lt;/P&gt;
&lt;P&gt;1,000 件のテストデータで、上記の例を評価したところ、約 10 倍の差がありました。&lt;/P&gt;&lt;!-- Powered by IMHO 1.3 (EN) Instant Blogger Copyright (c) 2005 A.Boschin - http://www.imhoproject.org --&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/20389.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>河端善博</dc:creator><title>後方一致を計算列とインデックスでチューニング</title><link>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20388.aspx</link><pubDate>Wed, 10 Jan 2007 10:56:00 GMT</pubDate><guid>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20388.aspx</guid><wfw:comment>http://blogs.sqlpassj.org/yoshihirokawabata/comments/20388.aspx</wfw:comment><comments>http://blogs.sqlpassj.org/yoshihirokawabata/archive/2007/01/10/20388.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.sqlpassj.org/yoshihirokawabata/comments/commentRss/20388.aspx</wfw:commentRss><trackback:ping>http://blogs.sqlpassj.org/yoshihirokawabata/services/trackbacks/20388.aspx</trackback:ping><description>&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;select&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;string1&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;from&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table2&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;where&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;string1&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;like&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #ff0000; FONT-FAMILY: Courier New"&gt;'%A'&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;
&lt;P&gt;このような後方一致のクエリーをチューニングします。&lt;/P&gt;
&lt;P&gt;方法は、string1 を事前に逆順にした計算列を作成し、インデックスを作成します。&lt;/P&gt;
&lt;P&gt;具体的には、次のようになります&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;SPAN&gt;テーブル:Table2&lt;/SPAN&gt; 
&lt;TABLE border=1&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH&gt;列名&lt;/TH&gt;
&lt;TH&gt;データ型/計算式&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;id&lt;/TD&gt;
&lt;TD&gt;int&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;string1&lt;/TD&gt;
&lt;TD&gt;varchar(50)&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="BACKGROUND-COLOR: #ffffc0"&gt;
&lt;TD&gt;stringR&lt;/TD&gt;
&lt;TD&gt;reverse(string1)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR&gt;&lt;SPAN&gt;インデックス&lt;/SPAN&gt; 
&lt;TABLE border=1&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH&gt;インデックス名&lt;/TH&gt;
&lt;TH&gt;列&lt;/TH&gt;&lt;/TR&gt;&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;PK_Table2&lt;/TD&gt;
&lt;TD&gt;id&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="BACKGROUND-COLOR: #ffffc0"&gt;
&lt;TD&gt;IX_Table2_stringR_string1&lt;/TD&gt;
&lt;TD&gt;stringR, string1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;テーブルには、計算列 stringR を作成し、reverse(string1) を設定します。&lt;BR&gt;関数 reverse は、'abc' を 'cba' のように文字列を逆順にします。&lt;/P&gt;
&lt;P&gt;インデックスには、列 stringR を含む IX_Table2_stringR_string1 を定義しています。&lt;BR&gt;このインデックスには、string1 を含めていますが、これはインデックスのみから結果を返すためにいれています。実際のテーブルでは実行プランを見ながら検討してください。&lt;/P&gt;
&lt;P&gt;クエリーを次のように変更します。&lt;/P&gt;&lt;FONT face=Verdana size=2&gt;
&lt;DIV style="BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: black 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: gainsboro"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;select&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;string1&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;from&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;Table2&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #0000ff; FONT-FAMILY: Courier New"&gt;where&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Courier New"&gt;stringR&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;like&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #ff00ff; FONT-FAMILY: Courier New"&gt;reverse&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #ff0000; FONT-FAMILY: Courier New"&gt;'%A'&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #808080; FONT-FAMILY: Courier New"&gt;)&lt;BR&gt;&lt;/DIV&gt;&lt;/SPAN&gt;&lt;/FONT&gt;
&lt;P&gt;計算列 stringR と インデックス IX_Table2_stringR_string1 を設定することにより、後方一致の検索もインデックスシークで行えるようになります。&lt;/P&gt;
&lt;P&gt;※この投稿は、下記の記事を見て思いつきました。&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;ITPro : 基礎から理解するデータベースのしくみ(5)&lt;BR&gt;　SQL 文はどのように実行されるのか (4)&lt;BR&gt;　「&lt;A title="" href="http://itpro.nikkeibp.co.jp/article/COLUMN/20060111/227105/" target="" name=""&gt;インデックスの作りすぎに注意&lt;/A&gt;」&lt;BR&gt;　(2006/1/23 布目 綾子)&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;!-- Powered by IMHO 1.3 (EN) Instant Blogger Copyright (c) 2005 A.Boschin - http://www.imhoproject.org --&gt;&lt;img src ="http://blogs.sqlpassj.org/yoshihirokawabata/aggbug/20388.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>