ブログ - OutlookでSQLを使う
メールの保存形式はmbox形式だったりmaildir形式だったりとするけれど,Microsoft Outlookの場合はデータベースで管理している.
このデータベースの信頼性が低かった時は,Outlookがクラッシュするとデータベースが破損して全損ということも,稀に頻繁によくあったようだ.2001年ごろまでかな.その時代に痛い目にあった人は今だにトラウマのようだ.
で,そのデータベースも安定しているようで,データが失われることは無くなった模様.データベースにUIを載せている点やデータベースのレプリケーション機能で同期している点はLotus Notes(Domono)とかも同じだけれど,現在のOutlookではビューの定義で一部SQLが使える.(前置きが長くなった)
メールボックスごとのフィルタ条件で,例えば「未読」とかはデフォルトで選択肢があり,「フラグあり」は自分で定義する必要があったりするけれど,「未読でフラグあり」というフィルタ条件は,用意されているGUIだと定義できない.
普通のメーラと違い,Outlookメッセージフラグには何種類かあるので,>0となっているのがキモかな.
このMicrosoftの人のブログに,色々書いてある.
Doing more with Outlook filter and SQL DASL syntax
https://blogs.msdn.microsoft.com/andrewdelin/2005/05/10/doing-more-with-outlook-filter-and-sql-dasl-syntax/
最近のMicrosoftの公式の技術文書は,機械翻訳されてわけわからんことになっているので,巣のブログ開設の方が役に立つことがあるな...
このデータベースの信頼性が低かった時は,Outlookがクラッシュするとデータベースが破損して全損ということも,稀に頻繁によくあったようだ.2001年ごろまでかな.その時代に痛い目にあった人は今だにトラウマのようだ.
で,そのデータベースも安定しているようで,データが失われることは無くなった模様.データベースにUIを載せている点やデータベースのレプリケーション機能で同期している点はLotus Notes(Domono)とかも同じだけれど,現在のOutlookではビューの定義で一部SQLが使える.(前置きが長くなった)
メールボックスごとのフィルタ条件で,例えば「未読」とかはデフォルトで選択肢があり,「フラグあり」は自分で定義する必要があったりするけれど,「未読でフラグあり」というフィルタ条件は,用意されているGUIだと定義できない.
"urn:schemas:httpmail:read" = 0
OR
"urn:schemas:httpmail:messageflag" > 0
このMicrosoftの人のブログに,色々書いてある.
Doing more with Outlook filter and SQL DASL syntax
https://blogs.msdn.microsoft.com/andrewdelin/2005/05/10/doing-more-with-outlook-filter-and-sql-dasl-syntax/
最近のMicrosoftの公式の技術文書は,機械翻訳されてわけわからんことになっているので,巣のブログ開設の方が役に立つことがあるな...