- The ADO/OLE DB Conspiracy
- What Does ADO 2.5 Have to Do with Exchange 2000?
- The Role of the Web Storage System
- The Exchange OLE DB Provider
- File URLs
- HTTP URLs
- Programmatically Getting a User's HTTP Mailbox Folder URLs
- The Open Method of the ADO 2.5 Record Object
- Using Web Storage System SQL to Get a List of Folders
- Web Storage System SQL
- The SELECT Statement
- The ORDER BY Clause
- The RANK BY Clause
- Some Unsupported SQL
- Summary
Web Storage System SQL
At first glance, SQL queries for retrieving Exchange items may seem a bit syntactically "off"like the difference between American English and the Queen's Englishbut the more you study the syntax, the more familiar it will become. The Web Storage System provides a means to define schema information for the items it contains. It can provide this information to other applications, such as the WSS SQL query processor.
You can use WSS SQL to locate specific items or create views of data. You cannot use WSS SQL to update data in the Web Storage System. As we'll see, there is no support for such SQL staples as SET, UPDATE, CREATE, and so on. When using WSS SQL, ADO returns the search results as Recordset objects.
The Microsoft Indexing Service is the search engine for WSS SQL. If you open up the Services MMC, it is the Microsoft Search (MSSearch) service. This search engine operates using a system account that enables it to read all stores, including private mailboxes. However, the Recordset objects returned from a WSS SQL query are evaluated against the access control lists (ACLs) of the item or folder searched and the security identifier (SID) of the user making the query. Any item to which the user does not have access is removed before the search result is returned.