home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2000 September / VPR0009A.BIN / VS60SP4JPN / support / msjetodb.h < prev    next >
C/C++ Source or Header  |  1999-02-16  |  11KB  |  178 lines

  1. //=======================================================================
  2. // Microsoft JET OLEDB Provider
  3. //
  4. // Copyright Microsoft (c) 1995-9 Microsoft Corporation.
  5. //
  6. // Component: Microsoft JET Database Engine OLEDB Layer 
  7. //
  8. // File: MSJETOLEDB.H
  9. //
  10. // File Comments: This file contains the GUIDS necessary to load the 
  11. //                  Microsoft JET OLEDB Layer for the JET 4.0 database
  12. //                  Engine.
  13. //
  14. //=======================================================================
  15.  
  16. #ifndef MSJETOLEDB_H
  17. #define MSJETOLEDB_H
  18.  
  19. // OLE DB Provider
  20. const GUID CLSID_JETOLEDB_3_51                        = {0xdee35060,0x506b,0x11cf,{0xb1,0xaa,0x00,0xaa,0x00,0xb8,0xde,0x95}};
  21. const GUID CLSID_JETOLEDB_4_00                        = {0xdee35070,0x506b,0x11cf,{0xb1,0xaa,0x00,0xaa,0x00,0xb8,0xde,0x95}};
  22.  
  23. // Jet OLEDB Provider-Specific GUIDs
  24. const GUID DBSCHEMA_JETOLEDB_REPLPARTIALFILTERLIST  = {0xe2082df0,0x54ac,0x11d1,{0xbd,0xbb,0x00,0xc0,0x4f,0xb9,0x26,0x75}};
  25. const GUID DBSCHEMA_JETOLEDB_REPLCONFLICTTABLES     = {0xe2082df2,0x54ac,0x11d1,{0xbd,0xbb,0x00,0xc0,0x4f,0xb9,0x26,0x75}};
  26. const GUID DBSCHEMA_JETOLEDB_USERROSTER             = {0x947bb102,0x5d43,0x11d1,{0xbd,0xbf,0x00,0xc0,0x4f,0xb9,0x26,0x75}};
  27. const GUID DBSCHEMA_JETOLEDB_ISAMSTATS              = {0x8703b612,0x5d43,0x11d1,{0xbd,0xbf,0x00,0xc0,0x4f,0xb9,0x26,0x75}};
  28.  
  29. // Jet(Access)-Specific Security Objects
  30. const GUID DBOBJECT_JETOLEDB_FORMS                     = {0xc49c842e,0x9dcb,0x11d1,{0x9f,0x0a,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  31. const GUID DBOBJECT_JETOLEDB_SCRIPTS                 = {0xc49c842f,0x9dcb,0x11d1,{0x9f,0x0a,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}}; // These are Macros in Access
  32. const GUID DBOBJECT_JETOLEDB_REPORTS                 = {0xc49c8430,0x9dcb,0x11d1,{0x9f,0x0a,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  33. const GUID DBOBJECT_JETOLEDB_MODULES                 = {0xc49c8432,0x9dcb,0x11d1,{0x9f,0x0a,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  34.  
  35. // Private Property Set Descriptions
  36. const GUID DBPROPSET_JETOLEDB_ROWSET                = {0xa69de420,0x0025,0x11d0,{0xbc,0x9c,0x00,0xc0,0x4f,0xd7,0x05,0xc2}};
  37. const GUID DBPROPSET_JETOLEDB_SESSION                = {0xb20f6c12,0x9b2a,0x11d0,{0x9e,0xbd,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  38. const GUID DBPROPSET_JETOLEDB_DBINIT                = {0x82cf8156,0x9b40,0x11d0,{0x9e,0xbd,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  39. const GUID DBPROPSET_JETOLEDB_TABLE                    = {0xe64cc5fc,0x9ff2,0x11d0,{0x9e,0xbd,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  40. const GUID DBPROPSET_JETOLEDB_COLUMN                = {0x820bf922,0x6ac8,0x11d1,{0x9f,0x02,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  41. const GUID DBPROPSET_JETOLEDB_TRUSTEE                = {0xc9e19286,0x9b4a,0x11d1,{0x9f,0x0a,0x00,0xc0,0x4f,0xc2,0xc2,0xe0}};
  42.  
  43. // PROPIDs for DBPROPSET_JETOLEDB_ROWSET:
  44. #define DBPROP_JETOLEDB_ODBCPASSTHROUGH                    0xFD    // Is this query a pass-through query
  45. #define DBPROP_JETOLEDB_ODBCPASSTHROUGHCONNECTSTRING    0xF2    // Jet Connect String for pass-through query
  46. #define DBPROP_JETOLEDB_BULKPARTIAL                        0xEF    // Allow partial bulk operations
  47. #define    DBPROP_JETOLEDB_ENABLEFATCURSOR                    0xEE    // Enable "fat cursor" caching
  48. #define DBPROP_JETOLEDB_FATCURSORMAXROWS                0xED    // # of rows to cache in "fat cursor" 
  49. //#define DBPROP_JETOLEDB_3_5_ENABLEIRowsetIndex            0x101    // 3.5 ONLY - enable IRowsetIndex interface for Seek
  50. #define DBPROP_JETOLEDB_STOREDQUERY                        0x102    // Treat command text as stored query name
  51. #define DBPROP_JETOLEDB_VALIDATEONSET                    0xEC    // Check validation rules on SetData (instead of Update)
  52. #define DBPROP_JETOLEDB_LOCKGRANULARITY                    0x107    // Alcatraz Locking Granularity - Row/Page/Default
  53. #define DBPROP_JETOLEDB_BULKNOTRANSACTIONS                0x10C    // Determines if DML bulk operations are transacted
  54. #define DBPROP_JETOLEDB_INCONSISTENT                    0x117    // Equivalent to DAO's dbInconsistent
  55. #define DBPROP_JETOLEDB_PASSTHROUGHBULKOP                0x119    // Equivalent to DAO's ReturnsRecords (inversed)
  56.  
  57. // DBPROPSET_JETOLEDB_ROWSET DBPROP_JETOLEDB_LOCKGRANULARITY Enumeration Values
  58. #define DBPROPVAL_LG_PAGE                                0x01    // Page Locking 
  59. #define DBPROPVAL_LG_ALCATRAZ                            0x02    // Alcatraz Row Locking
  60.  
  61.  
  62. // PROPIDs for DBPROPSET_JETOLEDB_SESSION:
  63. #define DBPROP_JETOLEDB_RECYCLELONGVALUEPAGES            0xF9    // Whether the Jet engine should aggressively reclaim freed after use in BLOBs
  64. #define DBPROP_JETOLEDB_PAGETIMEOUT                        0xEB
  65. #define DBPROP_JETOLEDB_SHAREDASYNCDELAY                0xEA
  66. #define DBPROP_JETOLEDB_EXCLUSIVEASYNCDELAY                0xE9
  67. #define DBPROP_JETOLEDB_LOCKRETRY                        0xE8
  68. #define DBPROP_JETOLEDB_USERCOMMITSYNC                    0xE7
  69. #define DBPROP_JETOLEDB_MAXBUFFERSIZE                    0xE6
  70. #define DBPROP_JETOLEDB_LOCKDELAY                        0xE5
  71. #define DBPROP_JETOLEDB_FLUSHTRANSACTIONTIMEOUT            0xE4
  72. #define DBPROP_JETOLEDB_IMPLICITCOMMITSYNC                0xE3
  73. #define DBPROP_JETOLEDB_MAXLOCKSPERFILE                    0xE2
  74. #define DBPROP_JETOLEDB_ODBCCOMMANDTIMEOUT                0xDB
  75. #define DBPROP_JETOLEDB_RESETISAMSTATS                    0x104    // Determines if the ISAMSTATS schema resets after it returns stats
  76. #define DBPROP_JETOLEDB_CONNECTIONCONTROL                0x108    // Passive Shutdown (to prevent others from opening the database)
  77. #define DBPROP_JETOLEDB_ODBCPARSE                        0x113    // ODBC Parsing
  78. #define DBPROP_JETOLEDB_PAGELOCKSTOTABLELOCK            0x114    // # of pages locked in a transaction before jet tries to promote to excl. table lock
  79. #define DBPROP_JETOLEDB_SANDBOX                            0x115    
  80. #define DBPROP_JETOLEDB_TXNCOMMITMODE                    0x116    // Mode to be used when committing transactions
  81.  
  82. // DBPROPSET_JETOLEDB_SESSION DBPROP_JETOLEDB_CONNECTIONCONTROL Enumeration Values
  83. #define DBPROPVAL_JCC_PASSIVESHUTDOWN                    0x01    // prevent others from opening the database
  84. #define DBPROPVAL_JCC_NORMAL                            0x02    // allow others to open the database
  85.  
  86. // DBPROPSET_JETOLEDB_SESSION DBPROP_JETOLEDB_TXNCOMMITMODE Enumeration Values
  87. #define DBPROPVAL_JETOLEDB_TCM_FLUSH                    0x01    // Synchronously commit transactions to disk
  88.  
  89. // PROPIDs for DBPROPSET_JETOLEDB_DBINIT:
  90. #define DBPROP_JETOLEDB_REGPATH                            0xFB    // Path to Jet Registry entries
  91. #define DBPROP_JETOLEDB_SYSDBPATH                        0xFA    // Full Path to System Database
  92. #define DBPROP_JETOLEDB_DATABASEPASSWORD                0x100    // Password for Database 
  93. #define DBPROP_JETOLEDB_ENGINE                            0x103    // Enumeration of Jet Engine/ISAM type/version
  94. #define DBPROP_JETOLEDB_DATABASELOCKMODE                0x106    // Locking Granularity Scheme ("Old"/"Alcatraz" mode)
  95. #define DBPROP_JETOLEDB_GLOBALBULKPARTIAL                0x109    // Database Default Partial/No Partial Behavior
  96. #define DBPROP_JETOLEDB_GLOBALBULKNOTRANSACTIONS        0x10B    // Determines if DML bulk operations are transacted
  97. #define DBPROP_JETOLEDB_NEWDATABASEPASSWORD                0x10D    // Used to set new database password in IDBDataSourceAdmin::ModifyDataSource
  98. #define DBPROP_JETOLEDB_CREATESYSTEMDATABASE            0x10E    // Used on IDBDataSourceAdmin::CreateDataSource to create a system database
  99. #define DBPROP_JETOLEDB_ENCRYPTDATABASE                    0x10F    // Used on CreateDatasource, Compact to determine if new database is encrypted
  100. #define DBPROP_JETOLEDB_COMPACT_DONTCOPYLOCALE            0x110    // Don't copy per-column locale information to the compact target
  101. #define DBPROP_JETOLEDB_COMPACT_NOREPAIRREPLICAS        0x112    // Don't try to repair damaged replica databases when compacting
  102. #define DBPROP_JETOLEDB_SFP                                0x118    
  103. #define DBPROP_JETOLEDB_COMPACTFREESPACESIZE            0x11A    // How much free space would be reclaimed if the db were compacted
  104.  
  105. // DBPROP_JETOLEDB_GLOBALBULKPARTIAL/DBPROP_JETOLEDB_BULKPARTIAL Enumeration Values
  106. #define DBPROPVAL_BP_DEFAULT                            0x00    // Default (only valid for DBPROP_JETOLEDB_BULKPARTIAL)
  107. #define DBPROPVAL_BP_PARTIAL                            0x01    // Use partial updates (like Access)
  108. #define DBPROPVAL_BP_NOPARTIAL                            0x02    // Use No Partial Behavior (all or nothing)
  109.  
  110. // DBPROP_JETOLEDB_GLOBALNOTRANSACTIONS/DBPROP_JETOLEDB_BULKNOTRANSACTIONS Enumeration Values
  111. #define DBPROPVAL_BT_DEFAULT                            0x00    // Default (only valid for DBPROP_JETOLEDB_NOTRANSACTIONS)
  112. #define DBPROPVAL_BT_NOBULKTRANSACTIONS                    0x01    // Don't transact bulk operations
  113. #define DBPROPVAL_BT_BULKTRANSACTIONS                    0x02    // Transact bulk operations
  114.  
  115. // DBPROPSET_JETOLEDB_DBINIT DBPROP_JETOLEDB_ENGINE Enumeration Values
  116. #define JETDBENGINETYPE_UNKNOWN                            0x00    // ISAM Type Unknown/ N/A
  117. #define JETDBENGINETYPE_JET10                            0x01
  118. #define JETDBENGINETYPE_JET11                            0x02
  119. #define JETDBENGINETYPE_JET2X                            0x03
  120. #define JETDBENGINETYPE_JET3X                            0x04
  121. #define JETDBENGINETYPE_JET4X                            0x05
  122. #define JETDBENGINETYPE_DBASE3                            0x10
  123. #define JETDBENGINETYPE_DBASE4                            0x11
  124. #define JETDBENGINETYPE_DBASE5                            0x12
  125. #define JETDBENGINETYPE_EXCEL30                            0x20
  126. #define JETDBENGINETYPE_EXCEL40                            0x21
  127. #define JETDBENGINETYPE_EXCEL50                            0x22
  128. #define JETDBENGINETYPE_EXCEL80                            0x23
  129. #define JETDBENGINETYPE_EXCEL90                            0x24
  130. #define JETDBENGINETYPE_EXCHANGE4                        0x30
  131. #define JETDBENGINETYPE_LOTUSWK1                        0x40
  132. #define JETDBENGINETYPE_LOTUSWK3                        0x41
  133. #define JETDBENGINETYPE_LOTUSWK4                        0x42
  134. #define JETDBENGINETYPE_PARADOX3X                        0x50
  135. #define JETDBENGINETYPE_PARADOX4X                        0x51
  136. #define JETDBENGINETYPE_PARADOX5X                        0x52
  137. #define JETDBENGINETYPE_PARADOX7X                        0x53
  138. #define JETDBENGINETYPE_TEXT1X                            0x60
  139. #define JETDBENGINETYPE_HTML1X                            0x70
  140.  
  141. // DBPROPSET_JETOLEDB_DBINIT DBPROP_JETOLEDB_DATABASELOCKMODE Enumeration Values
  142. #define DBPROPVAL_DL_OLDMODE                            0x00    // Original Jet Database Locking Scheme
  143. #define DBPROPVAL_DL_ALCATRAZ                            0x01    // Alcatraz Technology - enables row-level locking
  144.  
  145. // PROPIDs for DBPROPSET_JETOLEDB_TABLE:
  146. #define DBPROP_JETOLEDB_LINK                            0xF7    // Is this table really a link?
  147. #define DBPROP_JETOLEDB_LINKEXCLUSIVE                    0xF6    // Should this link be opened exclusively on the remote database
  148. #define DBPROP_JETOLEDB_LINKDATASOURCE                    0xF5    // Remote data source to which to link
  149. #define DBPROP_JETOLEDB_LINKPROVIDERSTRING                0xF4    // Jet Provider string to be used to connect to the remote data source
  150. #define DBPROP_JETOLEDB_LINKREMOTETABLE                    0xF3    // remote table name of the link
  151. #define DBPROP_JETOLEDB_LINKCACHE_AUTHINFO                0xF0    // Should authentication information for this link be cached in the database?
  152. #define    DBPROP_JETOLEDB_VALIDATIONRULE                    0xD8    // Table Validation Rule
  153. #define    DBPROP_JETOLEDB_VALIDATIONTEXT                    0xD7    // Access Text to display when validation rule is not met
  154. #define    DBPROP_JETOLEDB_HIDDENINACCESS                    0x10A    // Determines if a table shows up as "hidden" in MS Access
  155.  
  156. // PROPIDs for DBPROPSET_JETOLEDB_COLUMN:
  157. #define    DBPROP_JETOLEDB_COL_HYPERLINK                    0xE1    // Hyperlink flag - use on "LongText" fields only
  158. #define    DBPROP_JETOLEDB_COL_ALLOWZEROLENGTH                0xE0    // Allow Zero Length Strings 
  159. #define    DBPROP_JETOLEDB_COL_COMPRESSED                    0xDF    // Compressed Text Columns (Red 4.x only)
  160. #define    DBPROP_JETOLEDB_COL_ONELVPERPAGE                0xDE    // Put more than one BLOB on a page (size allowing)?
  161. #define    DBPROP_JETOLEDB_COL_AUTOGENERATE                0xDD    // Autogenerate the value (GUID columns only)
  162. #define    DBPROP_JETOLEDB_COL_IISAMNOTLAST                0xDC    // used to tell the IISAM you intend to add more columns after this one
  163. #define    DBPROP_JETOLEDB_COL_VALIDATIONRULE                0xDA    // Column validation rule
  164. #define    DBPROP_JETOLEDB_COL_VALIDATIONTEXT                0xD9    // column validation text to display when validation rule is not met
  165.  
  166. // PROPIDs for DBPROPSET_COLUMN:
  167. #ifndef DBPROP_COL_SEED
  168. #define DBPROP_COL_SEED                                    0x11AL    
  169. #endif // DBPROP_COL_SEED
  170.  
  171. #ifndef DBPROP_COL_INCREMENT
  172. #define DBPROP_COL_INCREMENT                            0x11BL
  173. #endif // DBPROP_COL_INCREMENT
  174.  
  175. // PROPIDs for DBPROPSET_JETOLEDB_TRUSTEE:
  176. #define    DBPROP_JETOLEDB_TRUSTEE_PIN                        0x105    // Jet User pin (Username + Pin --> SID)
  177.  
  178. #endif //MSJETOLEDB_H