SlideShare uma empresa Scribd logo
1 de 28
照合順序をかる~く紹介 なんで、大文字小文字区別しないんだよ! 2010/10/09 お だ
アジェンダ 自己紹介 照合順序ってなに? どんなのがあるの? おまけ まとめ
自己紹介 織田 信亮(おだ しんすけ) 新日本コンピュータマネジメント という会社で開発者やってます。 個人的に興味のある技術等を blog で取り上げてます。  http://d.hatena.ne.jp/odashinsuke/ Club Windows7 / わんくま同盟 / JGGUG の勉強会に参加してます。
照合順序ってなに?
照合順序ってなに? 照合順序は、特定の言語とロケールの基準に基づいて、文字データの文字列の並べ替え方法および比較方法に関する規則を指定します。 http://msdn.microsoft.com/ja-jp/library/ms187582.aspx たとえば、昇順の ORDER BY 句では、英語を話す人は文字列 'Chiapas' が 'Colima' より前に並べ替えられると予測するでしょう。しかし、メキシコ在住のスペイン語を話す人であれば、'Ch' で始まる単語が 'C' で始まる単語の末尾に並べ替えられることを予測するかもしれません。 スペイン語わかんないから例えられても… ( ゚д゚)ポカーン
照合順序ってなに? ようは「文字データ」の 並び替え方法 比較方法 を決めるルールって事!
寄り道文字データってなに? 非 Unicode 型 char 型 varchar型 text 型 (varchar(max) 型) Unicode 型 nchar型 nvarchar型 ntext型 (nvarchar(max) 型) ※text, ntextは将来削除される可能性有り! http://msdn.microsoft.com/ja-jp/library/ms187993.aspx
寄り道文字データってなに? 非 Unicode 型の文字データに照合順序を指定すると、その照合順序には特定のコード ページが関連付けられます。 http://msdn.microsoft.com/ja-jp/library/ms187582.aspx http://msdn.microsoft.com/ja-jp/library/ms186356.aspx
寄り道コードページってなに? 符号化文字集合や文字符号化方式を表す番号のことらしい。 http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%BC%E3%83%89%E3%83%9A%E3%83%BC%E3%82%B8 MS 的には… コードページ (code page) とは文字セットのことで、数字、区切り記号、および他のグリフを含むこともあります。 http://msdn.microsoft.com/ja-jp/library/2x8et5ee.aspx
寄り道符号化文字集合ってなに? ASCII(アスキー) Unicode JIS X ~ 使える文字を一覧にしたよ!?てな感じ?
寄り道文字符号化方式ってなに? ASCII(アスキー)※US-ASCII ? ISO-2022-JP Shint-JIS MS932 UTF-8 符号化文字集合の文字を数値コードに変換する方法。マッピング表みたいなの?
どんなのがあるの?
どんなのがあるの? Windows 照合順序 SQL Server インスタンスがインストールされているオペレーティング システムで使用できる Windows システム ロケールを SQL Server でサポートするために定義されている照合順序 SQL Server 照合順序 以前のバージョンの SQL Server で指定されることが多かった物をリストアップした互換性オプション http://msdn.microsoft.com/ja-jp/library/ms175194.aspx
設定と適用範囲は? 次の4つの単位で設定可能 サーバー (インスタンス) データベース 列 式 基本は上位の設定を引き継ぐ。 下位で変更可能。 http://msdn.microsoft.com/ja-jp/library/ms177439.aspx
設定と適用範囲は? サーバー (インスタンス) 作成時に設定します。一応変更も可能。 データベース 作成時に設定します。変更も可能。 列 作成時に設定します。変更も可能。(例外有) 式 宣言時に設定します。
設定と適用範囲は? おまけ 識別子 ,[object Object],ログイン名、データベース名 等 直接発行する SQL 内の 変数、GOTO ラベル 等 組み込みストアド、関数 等 ,[object Object],テーブル名、列名 等 http://msdn.microsoft.com/ja-jp/library/ms188686.aspx
デ モ
オプションの紹介 6種類あります。 Case Sensitivity (大文字小文字の区別) Accent Sensitivity (アクセントの区別) Kanatype Sensitive (かなを区別) Width Sensitivity (文字幅を区別) BIN (バイナリ並べ替え順) BIN2 (バイナリ並べ替え順)
大文字小文字の区別 Case Sensitivity ,[object Object]
区別する - CS“a” と “A” が同じ扱い。 日本語ではあまり影響ない?
アクセントの区別 Accent Sensitivity ,[object Object]
区別する - AS“a” と “á” が同じ扱い。 日本語だと、濁点、半濁点 が同じ扱い。 例:「は」と「ば」と「ぱ」が同じ。 また、小文字(小さいかな)も同じ扱い。 例:「つ」と「っ」が同じ。
かなを区別 Kanatype Sensitive ,[object Object]
区別する - KSひらがなとカタカナが同じ扱い。 例:「あ」と「ア」が同じ。
文字幅を区別 Width Sensitivity ,[object Object]
区別する - WS1 バイト表現と 2 バイト表現が区別されます。例:「ア」と「ア」が同じ。
バイナリ並べ替え順 ,[object Object],旧バージョンとの互換性のあるバイナリ並べ替え順 ,[object Object],SQL Server 2005 で導入されたコード ポイントの比較セマンティクスを使用するバイナリ並べ替え順 バイナリ並べ替え順は、他のオプションと同時には使用出来ない。
デ モ

Mais conteúdo relacionado

Mais de Oda Shinsuke

Blazor 触ってみた
Blazor 触ってみたBlazor 触ってみた
Blazor 触ってみたOda Shinsuke
 
Linux + PHP でも SQL Server
Linux + PHP でも SQL ServerLinux + PHP でも SQL Server
Linux + PHP でも SQL ServerOda Shinsuke
 
グラフデータベースの話し
グラフデータベースの話しグラフデータベースの話し
グラフデータベースの話しOda Shinsuke
 
Sql server 2017 新機能のご紹介
Sql server 2017 新機能のご紹介Sql server 2017 新機能のご紹介
Sql server 2017 新機能のご紹介Oda Shinsuke
 
Sql server 2017 からはじめる graph データベース
Sql server 2017 からはじめる graph データベースSql server 2017 からはじめる graph データベース
Sql server 2017 からはじめる graph データベースOda Shinsuke
 
Transaction scopeまだダメ
Transaction scopeまだダメTransaction scopeまだダメ
Transaction scopeまだダメOda Shinsuke
 
Sql serverと他dbの違いを押さえよう!
Sql serverと他dbの違いを押さえよう!Sql serverと他dbの違いを押さえよう!
Sql serverと他dbの違いを押さえよう!Oda Shinsuke
 
開発者の方向けの Sql server(db) t sql 振り返り
開発者の方向けの Sql server(db) t sql 振り返り開発者の方向けの Sql server(db) t sql 振り返り
開発者の方向けの Sql server(db) t sql 振り返りOda Shinsuke
 
Ms build 触ってみよう
Ms build 触ってみようMs build 触ってみよう
Ms build 触ってみようOda Shinsuke
 
Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Oda Shinsuke
 
Sql server sql database 最新機能紹介
Sql server sql database 最新機能紹介Sql server sql database 最新機能紹介
Sql server sql database 最新機能紹介Oda Shinsuke
 
Selenium 触ってみよう
Selenium 触ってみようSelenium 触ってみよう
Selenium 触ってみようOda Shinsuke
 
Sql database のご紹介
Sql database のご紹介Sql database のご紹介
Sql database のご紹介Oda Shinsuke
 
Sql database のご紹介
Sql database のご紹介Sql database のご紹介
Sql database のご紹介Oda Shinsuke
 
Sql world を支える技術
Sql world を支える技術Sql world を支える技術
Sql world を支える技術Oda Shinsuke
 
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃららSql database でも使えるほにゃらら
Sql database でも使えるほにゃららOda Shinsuke
 
Jsf アプリ作ったった
Jsf アプリ作ったったJsf アプリ作ったった
Jsf アプリ作ったったOda Shinsuke
 

Mais de Oda Shinsuke (20)

Blazor 触ってみた
Blazor 触ってみたBlazor 触ってみた
Blazor 触ってみた
 
Linux + PHP でも SQL Server
Linux + PHP でも SQL ServerLinux + PHP でも SQL Server
Linux + PHP でも SQL Server
 
グラフデータベースの話し
グラフデータベースの話しグラフデータベースの話し
グラフデータベースの話し
 
Sql server 2017 新機能のご紹介
Sql server 2017 新機能のご紹介Sql server 2017 新機能のご紹介
Sql server 2017 新機能のご紹介
 
Sql server 2017 からはじめる graph データベース
Sql server 2017 からはじめる graph データベースSql server 2017 からはじめる graph データベース
Sql server 2017 からはじめる graph データベース
 
Transaction scopeまだダメ
Transaction scopeまだダメTransaction scopeまだダメ
Transaction scopeまだダメ
 
Sql serverと他dbの違いを押さえよう!
Sql serverと他dbの違いを押さえよう!Sql serverと他dbの違いを押さえよう!
Sql serverと他dbの違いを押さえよう!
 
Sql world とは
Sql world とはSql world とは
Sql world とは
 
開発者の方向けの Sql server(db) t sql 振り返り
開発者の方向けの Sql server(db) t sql 振り返り開発者の方向けの Sql server(db) t sql 振り返り
開発者の方向けの Sql server(db) t sql 振り返り
 
Sql world とは
Sql world とはSql world とは
Sql world とは
 
Ms build 触ってみよう
Ms build 触ってみようMs build 触ってみよう
Ms build 触ってみよう
 
Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介
 
Sql server sql database 最新機能紹介
Sql server sql database 最新機能紹介Sql server sql database 最新機能紹介
Sql server sql database 最新機能紹介
 
Selenium 触ってみよう
Selenium 触ってみようSelenium 触ってみよう
Selenium 触ってみよう
 
Sql database のご紹介
Sql database のご紹介Sql database のご紹介
Sql database のご紹介
 
Sql database のご紹介
Sql database のご紹介Sql database のご紹介
Sql database のご紹介
 
Sql world を支える技術
Sql world を支える技術Sql world を支える技術
Sql world を支える技術
 
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃららSql database でも使えるほにゃらら
Sql database でも使えるほにゃらら
 
Sql world とは
Sql world とはSql world とは
Sql world とは
 
Jsf アプリ作ったった
Jsf アプリ作ったったJsf アプリ作ったった
Jsf アプリ作ったった
 

照合順序をかる~く紹介します