1 //
2 // GUIDs from oledb.h
3 //
4 #ifndef __oledbguid_h__
5 #define __oledbguid_h__
6
7 #ifdef _WIN64
8 #include <pshpack8.h>    // 8-byte structure packing
9 #else
10 #include <pshpack2.h>    // 2-byte structure packing
11 #endif
12
13 #ifndef UNALIGNED
14 #if defined(_MIPS_) || defined(_ALPHA_) || defined(_PPC_)
15 #define UNALIGNED __unaligned
16 #else
17 #define UNALIGNED
18 #endif
19 #endif //UNALIGNED
20 #undef OLEDBDECLSPEC
21 #if _MSC_VER >= 1100 && (!defined(SHx) || (defined(SHx) && _MSC_VER >= 1200))
22 #define OLEDBDECLSPEC __declspec(selectany)
23 #else
24 #define OLEDBDECLSPEC 
25 #endif //_MSC_VER
26 typedef unsigned long DBKIND;
27
28
29 enum DBKINDENUM
30       {    DBKIND_GUID_NAME    = 0,
31     DBKIND_GUID_PROPID    = ( DBKIND_GUID_NAME + 1 ) ,
32     DBKIND_NAME    = ( DBKIND_GUID_PROPID + 1 ) ,
33     DBKIND_PGUID_NAME    = ( DBKIND_NAME + 1 ) ,
34     DBKIND_PGUID_PROPID    = ( DBKIND_PGUID_NAME + 1 ) ,
35     DBKIND_PROPID    = ( DBKIND_PGUID_PROPID + 1 ) ,
36     DBKIND_GUID    = ( DBKIND_PROPID + 1 ) 
37       } ;
38 typedef struct tagDBID
39       {
40       union 
41              {
42              GUID guid;
43              GUID *pguid;
44                /* Empty union arm */ 
45              }     uGuid;
46       DBKIND eKind;
47       union 
48              {
49              wchar_t* pwszName;
50              unsigned long ulPropid;
51                /* Empty union arm */ 
52              }     uName;
53       }     DBID;
54
55 #define DBCIDGUID     {0x0C733A81L,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}}
56 #define DB_NULLGUID {0x00000000L,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}
57 #ifdef DBINITCONSTANTS
58 extern const OLEDBDECLSPEC DBID DB_NULLID                                    = {DB_NULLGUID, 0, (wchar_t*)0};
59 extern const OLEDBDECLSPEC DBID DBCOLUMN_IDNAME                          = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)2};
60 extern const OLEDBDECLSPEC DBID DBCOLUMN_NAME                              = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)3};
61 extern const OLEDBDECLSPEC DBID DBCOLUMN_NUMBER                          = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)4};
62 extern const OLEDBDECLSPEC DBID DBCOLUMN_TYPE                              = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)5};
63 extern const OLEDBDECLSPEC DBID DBCOLUMN_PRECISION                     = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)7};
64 extern const OLEDBDECLSPEC DBID DBCOLUMN_SCALE                            = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)8};
65 extern const OLEDBDECLSPEC DBID DBCOLUMN_FLAGS                            = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)9};
66 extern const OLEDBDECLSPEC DBID DBCOLUMN_BASECOLUMNNAME             = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)10};
67 extern const OLEDBDECLSPEC DBID DBCOLUMN_BASETABLENAME               = {DBCIDGUID, DBKIND_GUID_PROPID, (wchar_t*)11};
Lines 68 ... 379 are skipped.
380 extern const OLEDBDECLSPEC GUID DB_PROPERTY_HASH                                      = {0xc8b52202,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
381 extern const OLEDBDECLSPEC GUID DB_PROPERTY_FILLFACTOR                            = {0xc8b52203,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
382 extern const OLEDBDECLSPEC GUID DB_PROPERTY_INITIALSIZE                          = {0xc8b52204,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
383 extern const OLEDBDECLSPEC GUID DB_PROPERTY_DISALLOWNULL                         = {0xc8b52205,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
384 extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNORENULL                            = {0xc8b52206,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
385 extern const OLEDBDECLSPEC GUID DB_PROPERTY_IGNOREANYNULL                       = {0xc8b52207,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
386 extern const OLEDBDECLSPEC GUID DB_PROPERTY_SORTBOOKMARKS                       = {0xc8b52208,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
387 extern const OLEDBDECLSPEC GUID DB_PROPERTY_AUTOMATICUPDATE                    = {0xc8b52209,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
388 extern const OLEDBDECLSPEC GUID DB_PROPERTY_EXPLICITUPDATE                     = {0xc8b5220a,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
389 #else // !DBINITCONSTANTS
390 extern const GUID DB_PROPERTY_CHECK_OPTION;
391 extern const GUID DB_PROPERTY_CONSTRAINT_CHECK_DEFERRED;
392 extern const GUID DB_PROPERTY_DROP_CASCADE;
393 extern const GUID DB_PROPERTY_ON_COMMIT_PRESERVE_ROWS;
394 extern const GUID DB_PROPERTY_UNIQUE;
395 extern const GUID DB_PROPERTY_PRIMARY;
396 extern const GUID DB_PROPERTY_CLUSTERED;
397 extern const GUID DB_PROPERTY_NONCLUSTERED;
398 extern const GUID DB_PROPERTY_BTREE;
399 extern const GUID DB_PROPERTY_HASH;
400 extern const GUID DB_PROPERTY_FILLFACTOR;
401 extern const GUID DB_PROPERTY_INITIALSIZE;
402 extern const GUID DB_PROPERTY_DISALLOWNULL;
403 extern const GUID DB_PROPERTY_IGNORENULL;
404 extern const GUID DB_PROPERTY_IGNOREANYNULL;
405 extern const GUID DB_PROPERTY_SORTBOOKMARKS;
406 extern const GUID DB_PROPERTY_AUTOMATICUPDATE;
407 extern const GUID DB_PROPERTY_EXPLICITUPDATE;
408 #endif // DBINITCONSTANTS
409 //
410 // GUIDs from cmdtree.h
411 //
412 #ifdef DBINITCONSTANTS
413 extern const OLEDBDECLSPEC GUID DBGUID_LIKE_SQL                                        = {0xc8b521f6,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
414 extern const OLEDBDECLSPEC GUID DBGUID_LIKE_DOS                                        = {0xc8b521f7,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
415 extern const OLEDBDECLSPEC GUID DBGUID_LIKE_OFS                                        = {0xc8b521f8,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
416 extern const OLEDBDECLSPEC GUID DBGUID_LIKE_MAPI                                      = {0xc8b521f9,0x5cf3,0x11ce,{0xad,0xe5,0x00,0xaa,0x00,0x44,0x77,0x3d}};
417 #else // !DBINITCONSTANTS
418 extern const GUID DBGUID_LIKE_SQL;
419 extern const GUID DBGUID_LIKE_DOS;
420 extern const GUID DBGUID_LIKE_OFS;
421 extern const GUID DBGUID_LIKE_MAPI;
422 #endif // DBINITCONSTANTS
423
424 #include <poppack.h>        // restore original structure packing
425
426 #endif // __oledbguid_h__
427
428