cmdtree.idl 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439
  1. //-----------------------------------------------------------------------------
  2. // File: cmdtree.idl
  3. //
  4. // Copyright: Copyright (c) Microsoft Corporation
  5. //
  6. // Contents: OLE DB Command Tree
  7. //
  8. // Comments:
  9. //
  10. //-----------------------------------------------------------------------------
  11. cpp_quote("//+---------------------------------------------------------------------------")
  12. cpp_quote("//")
  13. cpp_quote("// Microsoft OLE DB")
  14. cpp_quote("// Copyright (C) Microsoft Corporation, 1994 - 1999.")
  15. cpp_quote("//")
  16. cpp_quote("//----------------------------------------------------------------------------")
  17. cpp_quote("")
  18. cpp_quote("#ifdef _WIN64")
  19. cpp_quote("#include <pshpack8.h> // 8-byte structure packing")
  20. cpp_quote("#else")
  21. cpp_quote("#include <pshpack2.h> // 2-byte structure packing")
  22. cpp_quote("#endif")
  23. cpp_quote("")
  24. import "oledb.idl";
  25. [
  26. uuid(0c733aac-2a1c-11ce-ade5-00aa0044773d),
  27. pointer_default(unique)
  28. ]
  29. interface CommandTreeStructureDefinitions {
  30. //
  31. // DBCOMMANDTREE related definitions
  32. //
  33. typedef WORD DBCOMMANDOP;
  34. enum DBCOMMANDOPENUM {
  35. DBOP_scalar_constant,
  36. DBOP_DEFAULT,
  37. DBOP_NULL,
  38. DBOP_bookmark_name,
  39. DBOP_catalog_name,
  40. DBOP_column_name,
  41. DBOP_schema_name,
  42. DBOP_outall_name,
  43. DBOP_qualifier_name,
  44. DBOP_qualified_column_name,
  45. DBOP_table_name,
  46. DBOP_nested_table_name,
  47. DBOP_nested_column_name,
  48. DBOP_row,
  49. DBOP_table,
  50. DBOP_sort,
  51. DBOP_distinct,
  52. DBOP_distinct_order_preserving,
  53. DBOP_alias,
  54. DBOP_cross_join,
  55. DBOP_union_join,
  56. DBOP_inner_join,
  57. DBOP_left_semi_join,
  58. DBOP_right_semi_join,
  59. DBOP_left_anti_semi_join,
  60. DBOP_right_anti_semi_join,
  61. DBOP_left_outer_join,
  62. DBOP_right_outer_join,
  63. DBOP_full_outer_join,
  64. DBOP_natural_join,
  65. DBOP_natural_left_outer_join,
  66. DBOP_natural_right_outer_join,
  67. DBOP_natural_full_outer_join,
  68. DBOP_set_intersection,
  69. DBOP_set_union,
  70. DBOP_set_left_difference,
  71. DBOP_set_right_difference,
  72. DBOP_set_anti_difference,
  73. DBOP_bag_intersection,
  74. DBOP_bag_union,
  75. DBOP_bag_left_difference,
  76. DBOP_bag_right_difference,
  77. DBOP_bag_anti_difference,
  78. DBOP_division,
  79. DBOP_relative_sampling,
  80. DBOP_absolute_sampling,
  81. DBOP_transitive_closure,
  82. DBOP_recursive_union,
  83. DBOP_aggregate,
  84. DBOP_remote_table,
  85. DBOP_select,
  86. DBOP_order_preserving_select,
  87. DBOP_project,
  88. DBOP_project_order_preserving,
  89. DBOP_top,
  90. DBOP_top_percent,
  91. DBOP_top_plus_ties,
  92. DBOP_top_percent_plus_ties,
  93. DBOP_rank,
  94. DBOP_rank_ties_equally,
  95. DBOP_rank_ties_equally_and_skip,
  96. DBOP_navigate,
  97. DBOP_nesting,
  98. DBOP_unnesting,
  99. DBOP_nested_apply,
  100. DBOP_cross_tab,
  101. DBOP_is_NULL,
  102. DBOP_is_NOT_NULL,
  103. DBOP_equal,
  104. DBOP_not_equal,
  105. DBOP_less,
  106. DBOP_less_equal,
  107. DBOP_greater,
  108. DBOP_greater_equal,
  109. DBOP_equal_all,
  110. DBOP_not_equal_all,
  111. DBOP_less_all,
  112. DBOP_less_equal_all,
  113. DBOP_greater_all,
  114. DBOP_greater_equal_all,
  115. DBOP_equal_any,
  116. DBOP_not_equal_any,
  117. DBOP_less_any,
  118. DBOP_less_equal_any,
  119. DBOP_greater_any,
  120. DBOP_greater_equal_any,
  121. DBOP_anybits,
  122. DBOP_allbits,
  123. DBOP_anybits_any,
  124. DBOP_allbits_any,
  125. DBOP_anybits_all,
  126. DBOP_allbits_all,
  127. DBOP_between,
  128. DBOP_between_unordered,
  129. DBOP_match,
  130. DBOP_match_unique,
  131. DBOP_match_partial,
  132. DBOP_match_partial_unique,
  133. DBOP_match_full,
  134. DBOP_match_full_unique,
  135. DBOP_scalar_parameter,
  136. DBOP_scalar_function,
  137. DBOP_plus,
  138. DBOP_minus,
  139. DBOP_times,
  140. DBOP_over,
  141. DBOP_div,
  142. DBOP_modulo,
  143. DBOP_power,
  144. DBOP_like,
  145. DBOP_sounds_like,
  146. DBOP_like_any,
  147. DBOP_like_all,
  148. DBOP_is_INVALID,
  149. DBOP_is_TRUE,
  150. DBOP_is_FALSE,
  151. DBOP_and,
  152. DBOP_or,
  153. DBOP_xor,
  154. DBOP_equivalent,
  155. DBOP_not,
  156. DBOP_implies,
  157. DBOP_overlaps,
  158. DBOP_case_condition,
  159. DBOP_case_value,
  160. DBOP_nullif,
  161. DBOP_cast,
  162. DBOP_coalesce,
  163. DBOP_position,
  164. DBOP_extract,
  165. DBOP_char_length,
  166. DBOP_octet_length,
  167. DBOP_bit_length,
  168. DBOP_substring,
  169. DBOP_upper,
  170. DBOP_lower,
  171. DBOP_trim,
  172. DBOP_translate,
  173. DBOP_convert,
  174. DBOP_string_concat,
  175. DBOP_current_date,
  176. DBOP_current_time,
  177. DBOP_current_timestamp,
  178. DBOP_content_select,
  179. DBOP_content,
  180. DBOP_content_freetext,
  181. DBOP_content_proximity,
  182. DBOP_content_vector_or,
  183. DBOP_delete,
  184. DBOP_update,
  185. DBOP_insert,
  186. DBOP_min,
  187. DBOP_max,
  188. DBOP_count,
  189. DBOP_sum,
  190. DBOP_avg,
  191. DBOP_any_sample,
  192. DBOP_stddev,
  193. DBOP_stddev_pop,
  194. DBOP_var,
  195. DBOP_var_pop,
  196. DBOP_first,
  197. DBOP_last,
  198. DBOP_in,
  199. DBOP_exists,
  200. DBOP_unique,
  201. DBOP_subset,
  202. DBOP_proper_subset,
  203. DBOP_superset,
  204. DBOP_proper_superset,
  205. DBOP_disjoint,
  206. DBOP_pass_through,
  207. DBOP_defined_by_GUID,
  208. DBOP_text_command,
  209. DBOP_SQL_select,
  210. DBOP_prior_command_tree,
  211. DBOP_add_columns,
  212. DBOP_column_list_anchor,
  213. DBOP_column_list_element,
  214. DBOP_command_list_anchor,
  215. DBOP_command_list_element,
  216. DBOP_from_list_anchor,
  217. DBOP_from_list_element,
  218. DBOP_project_list_anchor,
  219. DBOP_project_list_element,
  220. DBOP_row_list_anchor,
  221. DBOP_row_list_element,
  222. DBOP_scalar_list_anchor,
  223. DBOP_scalar_list_element,
  224. DBOP_set_list_anchor,
  225. DBOP_set_list_element,
  226. DBOP_sort_list_anchor,
  227. DBOP_sort_list_element,
  228. DBOP_alter_character_set,
  229. DBOP_alter_collation,
  230. DBOP_alter_domain,
  231. DBOP_alter_index,
  232. DBOP_alter_procedure,
  233. DBOP_alter_schema,
  234. DBOP_alter_table,
  235. DBOP_alter_trigger,
  236. DBOP_alter_view,
  237. DBOP_coldef_list_anchor,
  238. DBOP_coldef_list_element,
  239. DBOP_create_assertion,
  240. DBOP_create_character_set,
  241. DBOP_create_collation,
  242. DBOP_create_domain,
  243. DBOP_create_index,
  244. DBOP_create_procedure,
  245. DBOP_create_schema,
  246. DBOP_create_synonym,
  247. DBOP_create_table,
  248. DBOP_create_temporary_table,
  249. DBOP_create_translation,
  250. DBOP_create_trigger,
  251. DBOP_create_view,
  252. DBOP_drop_assertion,
  253. DBOP_drop_character_set,
  254. DBOP_drop_collation,
  255. DBOP_drop_domain,
  256. DBOP_drop_index,
  257. DBOP_drop_procedure,
  258. DBOP_drop_schema,
  259. DBOP_drop_synonym,
  260. DBOP_drop_table,
  261. DBOP_drop_translation,
  262. DBOP_drop_trigger,
  263. DBOP_drop_view,
  264. DBOP_foreign_key,
  265. DBOP_grant_privileges,
  266. DBOP_index_list_anchor,
  267. DBOP_index_list_element,
  268. DBOP_primary_key,
  269. DBOP_property_list_anchor,
  270. DBOP_property_list_element,
  271. DBOP_referenced_table,
  272. DBOP_rename_object,
  273. DBOP_revoke_privileges,
  274. DBOP_schema_authorization,
  275. // PPP -- nice duplicate here
  276. // DBOP_schema_name,
  277. DBOP_unique_key,
  278. DBOP_scope_list_anchor,
  279. DBOP_scope_list_element,
  280. DBOP_content_table,
  281. };
  282. cpp_quote("#ifdef DBINITCONSTANTS")
  283. cpp_quote("extern const OLEDBDECLSPEC GUID DBGUID_LIKE_SQL = {0xc8b521f6,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};")
  284. cpp_quote("extern const OLEDBDECLSPEC GUID DBGUID_LIKE_DOS = {0xc8b521f7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};")
  285. cpp_quote("extern const OLEDBDECLSPEC GUID DBGUID_LIKE_OFS = {0xc8b521f8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};")
  286. cpp_quote("extern const OLEDBDECLSPEC GUID DBGUID_LIKE_MAPI = {0xc8b521f9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};")
  287. cpp_quote("#else // !DBINITCONSTANTS")
  288. cpp_quote("extern const GUID DBGUID_LIKE_SQL;")
  289. cpp_quote("extern const GUID DBGUID_LIKE_DOS;")
  290. cpp_quote("extern const GUID DBGUID_LIKE_OFS;")
  291. cpp_quote("extern const GUID DBGUID_LIKE_MAPI;")
  292. cpp_quote("#endif // DBINITCONSTANTS")
  293. } // ComandTreeStructureDefinitions
  294. #include "cmdtre.idl" // ICommandTree : IUnknown
  295. #include "qrybas.idl" // IQuery : ICommandTree
  296. cpp_quote("#include <poppack.h> // restore original structure packing")