enumerasi STRUCTURED_QUERY_RESOLVE_OPTION (structuredquery.h)
Opsi untuk menyelesaikan data ke dalam pohon kondisi.
Sintaks
typedef enum STRUCTURED_QUERY_RESOLVE_OPTION {
SQRO_DEFAULT = 0,
SQRO_DONT_RESOLVE_DATETIME = 0x1,
SQRO_ALWAYS_ONE_INTERVAL = 0x2,
SQRO_DONT_SIMPLIFY_CONDITION_TREES = 0x4,
SQRO_DONT_MAP_RELATIONS = 0x8,
SQRO_DONT_RESOLVE_RANGES = 0x10,
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS = 0x20,
SQRO_DONT_SPLIT_WORDS = 0x40,
SQRO_IGNORE_PHRASE_ORDER = 0x80,
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES = 0x100,
SQRO_ADD_ROBUST_ITEM_NAME = 0x200
} ;
Konstanta
SQRO_DEFAULT Nilai: 0 Windows 7 dan yang lebih baru. Bendera default. |
SQRO_DONT_RESOLVE_DATETIME Nilai: 0x1 Kecuali bendera ini diatur, ekspresi tanggal/waktu relatif dalam pConditionTree diganti dengan rentang tanggal/waktu absolut yang telah diselesaikan terhadap tanggal/waktu referensi yang diarahkan oleh pstReferenceTime. Misalnya, jika kueri AQS berisi ekspresi tanggal/waktu relatif "tanggal:bulan ini" dan tanggal/waktu referensi adalah 19/9/2006 10:28:33, pohon kondisi yang diselesaikan akan berisi rentang tanggal/waktu yang dimulai pada 9/1/2006 00:00:00 dan berakhir pada 10/1/2006 00:00:00 (di zona waktu UTC). |
SQRO_ALWAYS_ONE_INTERVAL Nilai: 0x2 Kecuali bendera ini diatur, menyelesaikan ekspresi tanggal/waktu relatif dapat mengakibatkan OR dari beberapa interval. Misalnya, jika kueri AQS berisi "date:Monday" dan tanggal/waktu referensi adalah 19/9/2006 10:28:33 (selasa), pohon kondisi yang diselesaikan akan berisi ATAU dengan rentang tiga jam 24 yang sesuai dengan Senin 11/9/2006, 18/9/2006 dan 25/9/2006, karena tidak jelas Senin mana yang dirujuk. Jika bendera ini diatur, hasilnya akan selalu menjadi rentang tanggal/waktu tunggal (untuk contoh ini, itu akan menjadi rentang tanggal/waktu yang dimulai pada 18/9/2006 00:00:00 dan berakhir pada 19/9/2006 00:00:00). |
SQRO_DONT_SIMPLIFY_CONDITION_TREES Nilai: 0x4 Kecuali bendera ini diatur, pohon kondisi yang dihasilkan akan memiliki kemungkinan penyederhanaan yang diterapkan padanya. |
SQRO_DONT_MAP_RELATIONS Nilai: 0x8 Kecuali bendera ini benar, simpul daun dengan properti virtual yang memetakan ke beberapa properti akan digantikan oleh OR node daun yang berisi properti aktual. Misalnya, kueri AQS "to:Bill" dapat mengakibatkan simpul daun di mana properti bernama System.StructuredQuery.Virtual.To benar-benar memetakan ke dua properti System.Message.ToAddress dan System.Message.ToName , sehingga pohon kondisi yang diselesaikan akan memiliki OR yang mencari "Tagihan" di dua properti tersebut. |
SQRO_DONT_RESOLVE_RANGES Nilai: 0x10 Rentang yang dihasilkan dari ekspresi tanggal/waktu, ekspresi seperti "20..40", pertama-tama diselesaikan ke simpul daun yang memiliki nilai VT_UNKNOWN di mana anggota punkVal mengimplementasikan antarmuka IInterval . Kecuali bendera ini diatur, pohon kondisi yang dikembalikan akan diselesaikan lebih lanjut dengan AND perbandingan sederhana seperti COP_GREATERTHANOREQUAL dan COP_LESSTHAN. Misalnya, untuk kueri AQS "date:this month" diselesaikan terhadap 19/9/2006 10:28:33, jika bendera ini tidak diatur, pohon kondisi yang dihasilkan adalah AND dari System.ItemDate COP_GREATERTHANOREQUAL 9/1/2006 00:00:00 dan System.ItemDate COP_LESSTHAN 10/1/2006 00:00:00. Jika bendera ini diatur, pohon kondisi yang dihasilkan akan menghubungkan System.ItemDate ke IInterval sehingga metode IInterval::GetLimits mengembalikan ILK_EXPLICIT_INCLUDED, 9/1/2006 00:00:00, ILK_EXPLICIT_EXCLUDED dan 10/1/2006 00:00:00. |
SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS Nilai: 0x20 Kata kunci yang tidak dibatasi adalah kata kunci yang tidak terkait dengan nilai yang menyelesaikan kondisi. Misalnya, dalam kueri AQS berikut, properti yang ditandai dengan "Dari" dianggap sebagai kata kunci yang tidak dibatasi: "Kind:email Subject:"My Resume" From:". Jika bendera ini diatur, properti tersebut akan ada di pohon kondisi yang dihasilkan sebagai simpul daun yang memiliki operasi COP_IMPLICIT , nilai string kosong, dan jenis semantik System.StructuredQueryType.Value. Jika tidak, itu akan dihapus sepenuhnya. |
SQRO_DONT_SPLIT_WORDS Nilai: 0x40 Jika bendera ini diatur, sekelompok kata yang tidak dipisahkan oleh spasi kosong akan disimpan bersama dalam satu simpul daun. Jika bendera ini tidak diatur, grup akan dipecah menjadi simpul daun terpisah. Aplikasi mungkin ingin mengatur bendera ini saat menyelesaikan pohon kondisi jika pohon yang dihasilkan akan diproses lebih lanjut oleh kode yang harus melakukan pemecahan kata tambahan. |
SQRO_IGNORE_PHRASE_ORDER Nilai: 0x80 Jika frasa dalam kueri AQS diapit dalam tanda kutip ganda, kata-kata dalam frasa tersebut masuk ke simpul daun tunggal (terlepas dari apakah SQRO_DONT_SPLIT_WORDS diatur) kecuali bendera ini diatur, dalam hal ini mereka berakhir dalam simpul daun terpisah dan urutannya tidak lagi penting. Aplikasi dapat mengatur bendera ini jika tidak dapat menangani simpul daun dengan beberapa kata dengan benar. |
SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES Nilai: 0x100 |
SQRO_ADD_ROBUST_ITEM_NAME Nilai: 0x200 Mengatasi masalah yang diketahui dalam pemecah kata, menambahkan kondisi pada PKEY_ItemNameDisplay sesuai kebutuhan. |
Keterangan
Jenis STRUCTURED_QUERY_RESOLVE_OPTION didefinisikan dalam StructuredQuery.h seperti yang ditunjukkan di sini.
typedef int STRUCTURED_QUERY_RESOLVE_OPTION;
Persyaratan
Klien minimum yang didukung | Windows XP dengan SP2, Windows Vista, Windows 7 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Header | structuredquery.h |
Redistribusi | Windows Desktop Search (WDS) 3.0 |