transactd 1.2.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (306) hide show
  1. checksums.yaml +4 -4
  2. data/BUILD_UNIX-JA +46 -67
  3. data/BUILD_WIN-JA +106 -63
  4. data/CMakeLists.txt +40 -15
  5. data/README +219 -75
  6. data/README-JA +207 -76
  7. data/README_ORMSRCGEN +118 -0
  8. data/README_ORMSRCGEN-JA +115 -0
  9. data/bin/common/tdclc_32_2_0.dll +0 -0
  10. data/bin/common/tdclc_64_2_0.dll +0 -0
  11. data/build/common/check_for_link_iconv.cmake +18 -14
  12. data/build/common/create_symlink.cmake.in +25 -0
  13. data/build/common/get_boost_libs.cmake +23 -23
  14. data/build/common/options.cmake +0 -66
  15. data/build/common/smart_install.cmake +3 -3
  16. data/build/common/transactd.rc.in +15 -5
  17. data/build/common/transactd_cl_common.cmake +37 -18
  18. data/build/common/transactd_cl_output.cmake +55 -13
  19. data/build/common/transactd_common.cmake +108 -31
  20. data/build/swig/php/generate.cmake.in +15 -17
  21. data/build/swig/php/generate.cmd.in +15 -9
  22. data/build/swig/php/php.swg +124 -82
  23. data/build/swig/php/transactd.no_yield.php +4494 -0
  24. data/build/swig/php/transactd.no_yield.php.git.patch +685 -0
  25. data/build/swig/php/transactd.no_yield.php.patch +685 -0
  26. data/build/swig/php/transactd.yield.php +4461 -0
  27. data/build/swig/php/transactd.yield.php.git.patch +652 -0
  28. data/build/swig/php/transactd.yield.php.patch +652 -0
  29. data/build/swig/referencecounter.h +79 -0
  30. data/build/swig/ruby/ruby.swg +226 -76
  31. data/build/swig/ruby/threadBlockRegionWrapper.h +71 -0
  32. data/build/swig/ruby/without_gvl.swg +87 -0
  33. data/build/swig/tdcl.i +659 -170
  34. data/build/swig/validatablepointer.h +91 -0
  35. data/build/tdclc/CMakeLists.txt +49 -34
  36. data/build/tdclc/{tdclc_64.cbproj → tdclc.cbproj} +65 -20
  37. data/build/tdclc/tdclc.rc +0 -0
  38. data/build/tdclcpp/CMakeLists.txt +84 -20
  39. data/build/tdclcpp/tdclcpp.rc +0 -0
  40. data/build/tdclcpp/{tdclcpp_bcb_64.cbproj → tdclcpp_bc.cbproj} +168 -44
  41. data/build/tdclrb/CMakeLists.txt +84 -66
  42. data/build/tdclrb/bldgem/extconf.rb +28 -3
  43. data/build/tdclrb/gem/helper.rb +11 -1
  44. data/build/tdclrb/gem_output.cmake +20 -16
  45. data/index_ja.html +15 -0
  46. data/source/bzs/db/IBlobBuffer.h +15 -17
  47. data/source/bzs/db/blobBuffer.h +186 -140
  48. data/source/bzs/db/blobStructs.h +37 -37
  49. data/source/bzs/db/engine/mysql/IReadRecords.h +34 -34
  50. data/source/bzs/db/engine/mysql/bookmark.h +150 -147
  51. data/source/bzs/db/engine/mysql/database.cpp +1721 -1526
  52. data/source/bzs/db/engine/mysql/database.h +608 -370
  53. data/source/bzs/db/engine/mysql/dbManager.cpp +213 -201
  54. data/source/bzs/db/engine/mysql/dbManager.h +115 -104
  55. data/source/bzs/db/engine/mysql/errorMessage.cpp +49 -50
  56. data/source/bzs/db/engine/mysql/errorMessage.h +25 -26
  57. data/source/bzs/db/engine/mysql/fieldAccess.h +55 -61
  58. data/source/bzs/db/engine/mysql/mydebuglog.cpp +326 -292
  59. data/source/bzs/db/engine/mysql/mydebuglog.h +63 -55
  60. data/source/bzs/db/engine/mysql/mysqlInternal.h +182 -125
  61. data/source/bzs/db/engine/mysql/mysqlThd.cpp +121 -121
  62. data/source/bzs/db/engine/mysql/mysqlThd.h +20 -20
  63. data/source/bzs/db/engine/mysql/percentageKey.h +241 -228
  64. data/source/bzs/db/protocol/ICommandExecuter.h +18 -17
  65. data/source/bzs/db/protocol/hs/hsCommandExecuter.cpp +543 -514
  66. data/source/bzs/db/protocol/hs/hsCommandExecuter.h +155 -158
  67. data/source/bzs/db/protocol/tdap/btrDate.cpp +213 -180
  68. data/source/bzs/db/protocol/tdap/btrDate.h +39 -37
  69. data/source/bzs/db/protocol/tdap/client/activeTable.cpp +173 -0
  70. data/source/bzs/db/protocol/tdap/client/activeTable.h +165 -0
  71. data/source/bzs/db/protocol/tdap/client/activeTableImple.h +370 -0
  72. data/source/bzs/db/protocol/tdap/client/bulkInsert.h +13 -23
  73. data/source/bzs/db/protocol/tdap/client/client.cpp +81 -68
  74. data/source/bzs/db/protocol/tdap/client/client.h +361 -320
  75. data/source/bzs/db/protocol/tdap/client/connMgr.cpp +17 -22
  76. data/source/bzs/db/protocol/tdap/client/connMgr.h +17 -19
  77. data/source/bzs/db/protocol/tdap/client/connectionPool.cpp +243 -0
  78. data/source/bzs/db/protocol/tdap/client/connectionPool.h +109 -0
  79. data/source/bzs/db/protocol/tdap/client/database.cpp +327 -219
  80. data/source/bzs/db/protocol/tdap/client/database.h +141 -118
  81. data/source/bzs/db/protocol/tdap/client/databaseFactory.cpp +60 -62
  82. data/source/bzs/db/protocol/tdap/client/databaseManager.h +255 -0
  83. data/source/bzs/db/protocol/tdap/client/dbDef.cpp +315 -202
  84. data/source/bzs/db/protocol/tdap/client/dbDef.h +40 -32
  85. data/source/bzs/db/protocol/tdap/client/dllmain.cpp +390 -371
  86. data/source/bzs/db/protocol/tdap/client/errorMessage.cpp +148 -56
  87. data/source/bzs/db/protocol/tdap/client/errorMessage_ja.cpp +149 -57
  88. data/source/bzs/db/protocol/tdap/client/export.h +35 -0
  89. data/source/bzs/db/protocol/tdap/client/field.cpp +1985 -0
  90. data/source/bzs/db/protocol/tdap/client/field.h +393 -0
  91. data/source/bzs/db/protocol/tdap/client/fieldDDF.cpp +14 -14
  92. data/source/bzs/db/protocol/tdap/client/fieldDDF.h +11 -14
  93. data/source/bzs/db/protocol/tdap/client/fieldNameAlias.cpp +123 -0
  94. data/source/bzs/db/protocol/tdap/client/fieldNameAlias.h +58 -0
  95. data/source/bzs/db/protocol/tdap/client/fields.h +178 -0
  96. data/source/bzs/db/protocol/tdap/client/fileDDF.cpp +13 -16
  97. data/source/bzs/db/protocol/tdap/client/fileDDF.h +11 -17
  98. data/source/bzs/db/protocol/tdap/client/filter.h +423 -259
  99. data/source/bzs/db/protocol/tdap/client/groupComp.h +117 -0
  100. data/source/bzs/db/protocol/tdap/client/groupQuery.cpp +818 -0
  101. data/source/bzs/db/protocol/tdap/client/groupQuery.h +281 -0
  102. data/source/bzs/db/protocol/tdap/client/indexDDF.cpp +14 -17
  103. data/source/bzs/db/protocol/tdap/client/indexDDF.h +11 -14
  104. data/source/bzs/db/protocol/tdap/client/memRecord.cpp +231 -0
  105. data/source/bzs/db/protocol/tdap/client/memRecord.h +145 -0
  106. data/source/bzs/db/protocol/tdap/client/memRecordset.cpp +448 -0
  107. data/source/bzs/db/protocol/tdap/client/memRecordset.h +159 -0
  108. data/source/bzs/db/protocol/tdap/client/nsDatabase.cpp +300 -173
  109. data/source/bzs/db/protocol/tdap/client/nsDatabase.h +53 -36
  110. data/source/bzs/db/protocol/tdap/client/nsTable.cpp +171 -128
  111. data/source/bzs/db/protocol/tdap/client/nsTable.h +121 -87
  112. data/source/bzs/db/protocol/tdap/client/pooledDatabaseManager.h +173 -0
  113. data/source/bzs/db/protocol/tdap/client/recordset.cpp +209 -0
  114. data/source/bzs/db/protocol/tdap/client/recordset.h +86 -0
  115. data/source/bzs/db/protocol/tdap/client/recordsetImple.h +596 -0
  116. data/source/bzs/db/protocol/tdap/client/request.h +227 -170
  117. data/source/bzs/db/protocol/tdap/client/serializer.cpp +1288 -0
  118. data/source/bzs/db/protocol/tdap/client/serializer.h +295 -0
  119. data/source/bzs/db/protocol/tdap/client/sharedData.cpp +9 -12
  120. data/source/bzs/db/protocol/tdap/client/sharedData.h +18 -16
  121. data/source/bzs/db/protocol/tdap/client/sqlBuilder.cpp +494 -473
  122. data/source/bzs/db/protocol/tdap/client/sqlBuilder.h +51 -53
  123. data/source/bzs/db/protocol/tdap/client/stringConverter.h +214 -148
  124. data/source/bzs/db/protocol/tdap/client/table.cpp +929 -1665
  125. data/source/bzs/db/protocol/tdap/client/table.h +413 -87
  126. data/source/bzs/db/protocol/tdap/client/trdboostapi.h +642 -534
  127. data/source/bzs/db/protocol/tdap/client/trdboostapiInternal.h +25 -40
  128. data/source/bzs/db/protocol/tdap/client/trdclcppautolink.h +11 -15
  129. data/source/bzs/db/protocol/tdap/client/trdormapi.h +378 -437
  130. data/source/bzs/db/protocol/tdap/client/trnsctcl.def +1 -1
  131. data/source/bzs/db/protocol/tdap/fieldComp.h +127 -0
  132. data/source/bzs/db/protocol/tdap/myDateTime.cpp +352 -345
  133. data/source/bzs/db/protocol/tdap/mysql/characterset.cpp +75 -78
  134. data/source/bzs/db/protocol/tdap/mysql/characterset.h +18 -19
  135. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.cpp +216 -199
  136. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.h +23 -14
  137. data/source/bzs/db/protocol/tdap/mysql/debuglog.cpp +354 -314
  138. data/source/bzs/db/protocol/tdap/mysql/debuglog.h +57 -47
  139. data/source/bzs/db/protocol/tdap/mysql/recordsetReader.h +905 -739
  140. data/source/bzs/db/protocol/tdap/mysql/request.h +152 -159
  141. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.cpp +1044 -879
  142. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.h +87 -81
  143. data/source/bzs/db/protocol/tdap/tdapRequest.h +162 -130
  144. data/source/bzs/db/protocol/tdap/tdapSchema.cpp +368 -166
  145. data/source/bzs/db/protocol/tdap/tdapSchema.h +702 -566
  146. data/source/bzs/db/protocol/tdap/tdapcapi.h +387 -353
  147. data/source/bzs/db/transactd/appBuilderImple.h +21 -20
  148. data/source/bzs/db/transactd/appModule.cpp +350 -98
  149. data/source/bzs/db/transactd/appModule.h +31 -37
  150. data/source/bzs/db/transactd/connManager.cpp +138 -135
  151. data/source/bzs/db/transactd/connManager.h +28 -21
  152. data/source/bzs/db/transactd/connectionRecord.h +39 -39
  153. data/source/bzs/db/transactd/transactd.cpp +217 -203
  154. data/source/bzs/env/boost_bcb_link.h +131 -0
  155. data/source/bzs/env/compiler.h +136 -79
  156. data/source/bzs/env/crosscompile.cpp +57 -57
  157. data/source/bzs/env/crosscompile.h +130 -115
  158. data/source/bzs/env/fileopen.h +7 -8
  159. data/source/bzs/env/mbcswchrLinux.cpp +4 -9
  160. data/source/bzs/env/mbcswchrLinux.h +37 -34
  161. data/source/bzs/env/tcharMinGW.h +59 -0
  162. data/source/bzs/env/tstring.h +90 -95
  163. data/source/bzs/example/changeSchema.cpp +22 -23
  164. data/source/bzs/example/changeSchema_c.cpp +22 -24
  165. data/source/bzs/example/connection_pool_c.cpp +49 -104
  166. data/source/bzs/example/createDatabase.cpp +40 -47
  167. data/source/bzs/example/createDatabase_c.cpp +38 -43
  168. data/source/bzs/example/deleteRecords.cpp +10 -15
  169. data/source/bzs/example/deleteRecords_c.cpp +10 -14
  170. data/source/bzs/example/dropDatabase.cpp +3 -9
  171. data/source/bzs/example/dropDatabase_c.cpp +5 -6
  172. data/source/bzs/example/insertRecords.cpp +37 -29
  173. data/source/bzs/example/insertRecords_c.cpp +19 -25
  174. data/source/bzs/example/ormap_c.cpp +621 -0
  175. data/source/bzs/example/queryData.cpp +371 -0
  176. data/source/bzs/example/queryData.h +16 -0
  177. data/source/bzs/example/query_c.cpp +109 -0
  178. data/source/bzs/example/readRecords.cpp +27 -27
  179. data/source/bzs/example/readRecords_c.cpp +25 -23
  180. data/source/bzs/example/updateRecords.cpp +16 -21
  181. data/source/bzs/example/updateRecords_c.cpp +8 -12
  182. data/source/bzs/example/update_with_transaction.cpp +21 -24
  183. data/source/bzs/example/update_with_transaction_c.cpp +12 -15
  184. data/source/bzs/example/useORMRecord.cpp +177 -0
  185. data/source/bzs/netsvc/client/tcpClient.cpp +167 -156
  186. data/source/bzs/netsvc/client/tcpClient.h +541 -489
  187. data/source/bzs/netsvc/server/IAppModule.h +119 -32
  188. data/source/bzs/netsvc/server/iserver.h +21 -23
  189. data/source/bzs/netsvc/server/serverCpt.cpp +421 -391
  190. data/source/bzs/netsvc/server/serverCpt.h +41 -43
  191. data/source/bzs/netsvc/server/serverPipe.cpp +580 -565
  192. data/source/bzs/netsvc/server/serverPipe.h +44 -45
  193. data/source/bzs/netsvc/server/serverTpool.cpp +333 -303
  194. data/source/bzs/netsvc/server/serverTpool.h +38 -43
  195. data/source/bzs/rtl/benchmark.cpp +91 -31
  196. data/source/bzs/rtl/benchmark.h +76 -22
  197. data/source/bzs/rtl/datetime.cpp +231 -233
  198. data/source/bzs/rtl/datetime.h +16 -16
  199. data/source/bzs/rtl/debuglog.cpp +48 -51
  200. data/source/bzs/rtl/debuglog.h +55 -44
  201. data/source/bzs/rtl/exception.h +55 -48
  202. data/source/bzs/rtl/stl_uty.cpp +27 -28
  203. data/source/bzs/rtl/stl_uty.h +28 -29
  204. data/source/bzs/rtl/stringBuffers.cpp +8 -6
  205. data/source/bzs/rtl/stringBuffers.h +16 -9
  206. data/source/bzs/rtl/strtrim.cpp +90 -91
  207. data/source/bzs/rtl/strtrim.h +14 -16
  208. data/source/bzs/test/tdclatl/bench_query_atl.js +647 -0
  209. data/source/bzs/test/tdclatl/bench_tdclatl.js +303 -303
  210. data/source/bzs/test/tdclatl/test_query_atl.js +669 -0
  211. data/source/bzs/test/tdclphp/bench.php +357 -0
  212. data/source/bzs/test/tdclphp/transactd_Test.php +907 -303
  213. data/source/bzs/test/tdclphp/transactd_blob_Test.php +21 -49
  214. data/source/bzs/test/tdclphp/transactd_datetime_Test.php +41 -75
  215. data/source/bzs/test/tdclphp/transactd_kanjischema_Test.php +23 -37
  216. data/source/bzs/test/tdclphp/transactd_pool_Test.php +120 -0
  217. data/source/bzs/test/tdclrb/bench_tdclcpp.rb +4 -6
  218. data/source/bzs/test/tdclrb/prepare.rb +15 -12
  219. data/source/bzs/test/tdclrb/transactd_blob_spec.rb +29 -32
  220. data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +0 -29
  221. data/source/bzs/test/tdclrb/transactd_kanjischema_spec.rb +18 -19
  222. data/source/bzs/test/tdclrb/transactd_pool_spec.rb +107 -0
  223. data/source/bzs/test/tdclrb/transactd_spec.rb +734 -142
  224. data/source/bzs/test/transactdBench/query_bench.cpp +156 -0
  225. data/source/bzs/test/transactdBench/scaling_bench.cpp +265 -0
  226. data/source/bzs/test/transactdBench/transactdBench.cpp +107 -83
  227. data/source/bzs/test/transactdBench/transactdBench2.cpp +122 -83
  228. data/source/bzs/test/transactdBench/workerBase.cpp +5 -0
  229. data/source/bzs/test/transactdBench/workerBase.h +88 -0
  230. data/source/bzs/test/transactdBench/workerMySQLImple.h +333 -0
  231. data/source/bzs/test/transactdBench/workerTransactdImple.h +201 -0
  232. data/source/bzs/test/trdclengn/test_blob.cpp +121 -73
  233. data/source/bzs/test/trdclengn/test_trdclengn.cpp +1244 -426
  234. data/source/global/ormsrcgen/confParam.h +80 -0
  235. data/source/global/ormsrcgen/fieldName.cpp +77 -0
  236. data/source/global/ormsrcgen/fieldName.h +43 -0
  237. data/source/global/ormsrcgen/main.cpp +196 -0
  238. data/source/global/ormsrcgen/srcgen.cpp +763 -0
  239. data/source/global/ormsrcgen/srcgen.h +72 -0
  240. data/source/global/ormsrcgen/template/fieldNameList_sample.txt +2 -0
  241. data/source/global/ormsrcgen/template/ormDataClass_template.cpp +48 -0
  242. data/source/global/ormsrcgen/template/ormDataClass_template.h +34 -0
  243. data/source/global/ormsrcgen/template/ormMapClass_template.cpp +51 -0
  244. data/source/global/ormsrcgen/template/ormMapClass_template.h +62 -0
  245. data/source/global/ormsrcgen/template/template.cnf +38 -0
  246. data/source/global/querystmts/querystmts.cpp +237 -0
  247. data/source/global/tdclatl/ConnectParams.cpp +77 -0
  248. data/source/global/tdclatl/ConnectParams.h +70 -0
  249. data/source/global/tdclatl/Database.cpp +132 -128
  250. data/source/global/tdclatl/Database.h +60 -49
  251. data/source/global/tdclatl/DbDef.cpp +68 -64
  252. data/source/global/tdclatl/DbDef.h +36 -36
  253. data/source/global/tdclatl/Field.cpp +12 -17
  254. data/source/global/tdclatl/Field.h +15 -12
  255. data/source/global/tdclatl/FieldDef.cpp +75 -36
  256. data/source/global/tdclatl/FieldDef.h +38 -19
  257. data/source/global/tdclatl/FieldDefs.cpp +74 -0
  258. data/source/global/tdclatl/FieldDefs.h +56 -0
  259. data/source/global/tdclatl/FieldNames.cpp +99 -0
  260. data/source/global/tdclatl/FieldNames.h +66 -0
  261. data/source/global/tdclatl/Flags.cpp +75 -37
  262. data/source/global/tdclatl/Flags.h +13 -12
  263. data/source/global/tdclatl/GroupQuery.cpp +119 -0
  264. data/source/global/tdclatl/GroupQuery.h +65 -0
  265. data/source/global/tdclatl/KeyDef.cpp +15 -14
  266. data/source/global/tdclatl/KeyDef.h +20 -17
  267. data/source/global/tdclatl/KeySegment.cpp +13 -12
  268. data/source/global/tdclatl/PooledDbManager.cpp +223 -0
  269. data/source/global/tdclatl/PooledDbManager.h +76 -0
  270. data/source/global/tdclatl/QueryBase.cpp +206 -127
  271. data/source/global/tdclatl/QueryBase.h +55 -59
  272. data/source/global/tdclatl/Record.cpp +214 -0
  273. data/source/global/tdclatl/Record.h +96 -0
  274. data/source/global/tdclatl/Recordset.cpp +278 -0
  275. data/source/global/tdclatl/Recordset.h +83 -0
  276. data/source/global/tdclatl/RecordsetQuery.cpp +118 -0
  277. data/source/global/tdclatl/RecordsetQuery.h +126 -0
  278. data/source/global/tdclatl/Table.cpp +57 -60
  279. data/source/global/tdclatl/Table.h +32 -29
  280. data/source/global/tdclatl/TableDef.cpp +63 -62
  281. data/source/global/tdclatl/TableDef.h +20 -22
  282. data/source/global/tdclatl/TdVersion.cpp +3 -3
  283. data/source/global/tdclatl/TdVersion.h +15 -11
  284. data/source/global/tdclatl/_IDatabaseEvents_CP.h +99 -92
  285. data/source/global/tdclatl/activeTable.cpp +355 -0
  286. data/source/global/tdclatl/activeTable.h +79 -0
  287. data/source/global/tdclatl/dllmain.cpp +4 -3
  288. data/source/global/tdclatl/dllmain.h +7 -6
  289. data/source/global/tdclatl/keySegment.h +22 -18
  290. data/source/global/tdclatl/resource.h +0 -0
  291. data/source/global/tdclatl/stdafx.h +6 -4
  292. data/source/global/tdclatl/targetver.h +0 -1
  293. data/source/global/tdclatl/tdclatl.cpp +10 -5
  294. data/source/global/tdclatl/tdclatl.idl +530 -14
  295. data/source/linux/charsetConvert.h +78 -79
  296. data/source/linux/linuxTypes.h +9 -12
  297. data/source/linux/tchar.h +168 -166
  298. data/transactd.gemspec +24 -16
  299. metadata +98 -12
  300. data/bin/common/tdclc_32_1_2.dll +0 -0
  301. data/bin/common/tdclc_64_1_2.dll +0 -0
  302. data/build/tdclc/tdclc_32.cbproj +0 -173
  303. data/build/tdclcpp/tdclcpp_bcb_32.cbproj +0 -232
  304. data/build/tdclrb/GEM_VERSION +0 -3
  305. data/source/bzs/db/protocol/tdap/client/filter.cpp +0 -43
  306. data/source/bzs/example/useORM.cpp +0 -585
@@ -32,6 +32,18 @@ interface IKeySegment;
32
32
  interface IField;
33
33
  interface ITdVersion;
34
34
  interface IQueryBase;
35
+ interface IActiveTable;
36
+ interface IRecordset;
37
+ interface IRecord;
38
+ interface IWritableRecord;
39
+ interface IGroupQuery;
40
+ interface IRecordsetQuery;
41
+ interface IFieldDefs;
42
+ interface ISortField;
43
+ interface ISortFields;
44
+ interface IFieldNames;
45
+ interface IConnectParams;
46
+ interface IPooledDbManager;
35
47
 
36
48
  typedef
37
49
  [
@@ -63,7 +75,7 @@ typedef
63
75
  enum eFindType
64
76
  {
65
77
  findForword = 0,
66
- findBackForword = 0
78
+ findBackForword = 1
67
79
  }eFindType;
68
80
 
69
81
 
@@ -215,7 +227,9 @@ enum eFieldType
215
227
  ft_mytimestamp = 49,
216
228
  ft_mytext = 50,
217
229
  ft_myblob = 51,
218
- ft_nullindicator = 255
230
+ ft_autoIncUnsigned = 52,
231
+ ft_myfixedbinary = 53,
232
+ ft_nullindicator = 255
219
233
  }eFieldType;
220
234
 
221
235
  typedef
@@ -278,6 +292,30 @@ enum eContinusStatus
278
292
  TD_BACKUP_MODE_SERVER_ERROR = 91
279
293
  }eContinusStatus;
280
294
 
295
+ typedef
296
+ [
297
+ helpstring("Group function")
298
+ ]
299
+ enum eGroupFunc
300
+ {
301
+ fsum = 0,
302
+ fcount = 1,
303
+ favg = 2,
304
+ fmin = 3,
305
+ fmax = 4
306
+ }eGroupFunc;
307
+
308
+ typedef
309
+ [
310
+ helpstring("query optimize option")
311
+ ]
312
+ enum eOptimize
313
+ {
314
+ none = 0,
315
+ joinHasOneOrHasMany = 1,
316
+ combineCondition = 2
317
+ }eOptimize;
318
+
281
319
 
282
320
 
283
321
  [
@@ -296,7 +334,7 @@ interface IDatabase : IDispatch
296
334
  [id(0x00000002)]
297
335
  HRESULT _stdcall OpenTable([in] VARIANT TableID, [in, defaultvalue(normal)] eOpenMode Mode, [in, defaultvalue(-1)] VARIANT_BOOL AutoCreate, [in, defaultvalue("")] BSTR OwnerName, [in, defaultvalue("")] BSTR Uri, [out, retval] ITable** ret);
298
336
  [id(0x00000003), hidden]
299
- HRESULT _stdcall AtatchDatabase([in] hyper* nativeDatabase);
337
+ HRESULT _stdcall AtatchDatabase([in] hyper* nativeDatabase, [in, defaultvalue(0)] VARIANT_BOOL noRelease );
300
338
  [propget, id(0x00000004)]
301
339
  HRESULT _stdcall RootDir([out, retval] BSTR* Value);
302
340
  [propput, id(0x00000004)]
@@ -518,8 +556,8 @@ interface ITable : IDispatch
518
556
  HRESULT _stdcall Percentage([out, retval] long* Value);
519
557
  [id(0x00000031)]
520
558
  HRESULT _stdcall SeekByPercentage([in] long Value);
521
- [propget, id(0x00000024)]
522
- HRESULT _stdcall RecordCount([out, retval] long* Value);
559
+ [id(0x00000024)]
560
+ HRESULT _stdcall RecordCount([in, defaultvalue(-1)] VARIANT_BOOL estimate, [in, defaultvalue(0)] VARIANT_BOOL fromCurrent, [out, retval] long* Value);
523
561
  [propget, id(0x00000025)]
524
562
  HRESULT _stdcall RecordLength([out, retval] long* Value);
525
563
  [propget, id(0x00000026)]
@@ -538,8 +576,6 @@ interface ITable : IDispatch
538
576
  HRESULT _stdcall Vbin([in] VARIANT Index, [out, retval] BSTR* Value);
539
577
  [propput, id(0x00000028)]
540
578
  HRESULT _stdcall Vbin([in] VARIANT Index, [in] BSTR Value);
541
- [propget, id(0x00000029)]
542
- HRESULT _stdcall Filter([out, retval] BSTR* Value);
543
579
  [propput, id(0x00000029)]
544
580
  HRESULT _stdcall Filter([in] BSTR Value);
545
581
  [id(0x0000002A)]
@@ -613,7 +649,7 @@ interface ITable : IDispatch
613
649
  [propget, id(0x000000F0)]
614
650
  HRESULT _stdcall BookMarksCount([out, retval] int* Value);
615
651
  [id(0x000000F1)]
616
- HRESULT _stdcall Find([in] eFindType FindType);
652
+ HRESULT _stdcall Find([in, defaultvalue(findForword)] eFindType FindType);
617
653
  [propget, id(0x000000F2)]
618
654
  HRESULT _stdcall RecordHash([out, retval] unsigned int* Value);
619
655
  [propget, id(0x000000F3)]
@@ -640,6 +676,8 @@ interface ITable : IDispatch
640
676
  HRESULT _stdcall KeyValueDescription([out, retval] BSTR* Value);
641
677
  [id(0x000000FB)]
642
678
  HRESULT _stdcall SetQuery([in] IQueryBase* Value);
679
+ [id(0x000000FC)]
680
+ HRESULT _stdcall FieldNumByName([in] BSTR Name, [out, retval] short* Value);
643
681
 
644
682
  };
645
683
  [
@@ -799,6 +837,8 @@ interface IFieldDef : IDispatch
799
837
  HRESULT _stdcall CharNum([out, retval] unsigned int* Value);
800
838
  [id(0x00000014)]
801
839
  HRESULT _stdcall SetLenByCharnum([in] unsigned short Value);
840
+ [propget, id(0x00000015)]
841
+ HRESULT _stdcall Index([out, retval] short* Value);
802
842
 
803
843
 
804
844
 
@@ -958,7 +998,7 @@ interface IQueryBase : IDispatch
958
998
  [id(0x0000007)]
959
999
  HRESULT _stdcall Or([in] BSTR Name, [in] BSTR Logic, [in] VARIANT Value, [out, retval] IQueryBase** retVal);
960
1000
  [id(0x0000008)]
961
- HRESULT _stdcall AddInValue([in] VARIANT Value, [in] VARIANT_BOOL Reset);
1001
+ HRESULT _stdcall AddInValue([in] VARIANT Value, [in, defaultvalue(0)] VARIANT_BOOL Reset);
962
1002
  [id(0x0000009)]
963
1003
  HRESULT _stdcall In([in] VARIANT Value
964
1004
  ,[in, defaultvalue("")] VARIANT Value1
@@ -993,16 +1033,390 @@ interface IQueryBase : IDispatch
993
1033
  [id(0x0000013)]
994
1034
  HRESULT _stdcall IsAll([out, retval] VARIANT_BOOL* retVal);
995
1035
  [id(0x0000014)]
996
- HRESULT _stdcall Optimize([in] VARIANT_BOOL Value, [out, retval] IQueryBase** retVal);
1036
+ HRESULT _stdcall Optimize([in, defaultvalue(none)] eOptimize Value, [out, retval] IQueryBase** retVal);
1037
+ [id(0x0000015)]
1038
+ HRESULT _stdcall GetOptimize([out, retval] eOptimize* retVal);
1039
+ [id(0x0000016)]
1040
+ HRESULT _stdcall SelectCount([out, retval] short* retVal);
1041
+ [id(0x0000017)]
1042
+ HRESULT _stdcall GetSelect([in] short index, [out, retval] BSTR* retVal);
1043
+ [id(0x0000018)]
1044
+ HRESULT _stdcall WhereTokenCount([out, retval] short* retVal);
1045
+ [id(0x0000019)]
1046
+ HRESULT _stdcall GetWhereToken([in] short index, [out, retval] BSTR* retVal);
1047
+ [id(0x000001A)]
1048
+ HRESULT _stdcall BookmarkAlso([in] VARIANT_BOOL Value, [out, retval] IQueryBase** retVal);
1049
+ [id(0x000001B)]
1050
+ HRESULT _stdcall IsBookmarkAlso([out, retval] VARIANT_BOOL* retVal);
1051
+
1052
+
1053
+ };
1054
+
1055
+ [
1056
+ object,
1057
+ uuid(3EE9F43F-99D0-4300-B8A4-3085A2C4DAAB),
1058
+ dual,
1059
+ nonextensible,
1060
+ pointer_default(unique)
1061
+ ]
1062
+ interface IActiveTable : IDispatch
1063
+ {
1064
+ [id(0x0000001)]
1065
+ HRESULT _stdcall SetDatabase([in] VARIANT Value, [in] BSTR tableName);
1066
+ [id(0x0000002)]
1067
+ HRESULT _stdcall Index([in] short Value, [out, retval] IActiveTable** retVal);
1068
+ [id(0x0000003)]
1069
+ HRESULT _stdcall KeyValue([in] VARIANT Value0, [in, defaultvalue("")] VARIANT Value1
1070
+ ,[in, defaultvalue("")] VARIANT Value2, [in, defaultvalue("")] VARIANT Value3
1071
+ ,[in, defaultvalue("")] VARIANT Value4, [in, defaultvalue("")] VARIANT Value5
1072
+ ,[in, defaultvalue("")] VARIANT Value6, [in, defaultvalue("")] VARIANT Value7
1073
+ ,[out, retval] IActiveTable** retVal);
1074
+ [id(0x0000004)]
1075
+ HRESULT _stdcall Option([in] int Value, [out, retval] IActiveTable** retVal);
1076
+ [id(0x0000005)]
1077
+ HRESULT _stdcall Read([in, optional] VARIANT query, [out, retval] IRecordset** retVal);
1078
+ [id(0x0000006)]
1079
+ HRESULT _stdcall Alias([in] BSTR Src, [in] BSTR Dst, [out, retval] IActiveTable** retVal);
1080
+ [id(0x0000007)]
1081
+ HRESULT _stdcall ResetAlias([out, retval] IActiveTable** retVal);
1082
+ [id(0x0000008)]
1083
+ HRESULT _stdcall Join([in] IRecordset* rs, [in] IQueryBase* query, [in] BSTR Name0
1084
+ , [in, defaultvalue("")] BSTR Name1, [in, defaultvalue("")] BSTR Name2
1085
+ , [in, defaultvalue("")] BSTR Name3, [in, defaultvalue("")] BSTR Name4
1086
+ , [in, defaultvalue("")] BSTR Name5, [in, defaultvalue("")] BSTR Name6
1087
+ , [in, defaultvalue("")] BSTR Name7
1088
+ ,[out, retval] IRecordset** retVal);
1089
+
1090
+ [id(0x0000009)]
1091
+ HRESULT _stdcall OuterJoin([in] IRecordset* rs, [in] IQueryBase* query, [in] BSTR Name0
1092
+ , [in, defaultvalue("")] BSTR Name1, [in, defaultvalue("")] BSTR Name2
1093
+ , [in, defaultvalue("")] BSTR Name3, [in, defaultvalue("")] BSTR Name4
1094
+ , [in, defaultvalue("")] BSTR Name5, [in, defaultvalue("")] BSTR Name6
1095
+ , [in, defaultvalue("")] BSTR Name7
1096
+ ,[out, retval] IRecordset** retVal);
1097
+
1098
+ [id(0x000000A)]
1099
+ HRESULT _stdcall GetWritableRecord([out, retval] IWritableRecord** retVal);
1100
+ [propget, id(0x000000B)]
1101
+ HRESULT _stdcall TableDef([out, retval] ITableDef** Value);
1102
+
1103
+ };
1104
+
1105
+
1106
+ [
1107
+ object,
1108
+ uuid(3EE9F43F-99D0-43CC-B8A4-3085A2C4DAAB),
1109
+ dual,
1110
+ nonextensible,
1111
+ pointer_default(unique)
1112
+ ]
1113
+ interface IRecordset : IDispatch
1114
+ {
1115
+
1116
+ [id(0x0000002)]
1117
+ HRESULT _stdcall Record([in] unsigned long Index, [out, retval] IRecord** retVal);
1118
+ [id(0x0000003)]
1119
+ HRESULT _stdcall First([out, retval] IRecord** retVal);
1120
+ [id(0x0000004)]
1121
+ HRESULT _stdcall Last([out, retval] IRecord** retVal);
1122
+ [id(0x0000005)]
1123
+ HRESULT _stdcall Top([in]unsigned long Num, [out, retval] IRecordset** retVal);
1124
+ [id(0x0000006)]
1125
+ HRESULT _stdcall Erase([in]unsigned long Index);
1126
+ [propget,id(0x0000007)]
1127
+ HRESULT _stdcall Count([out, retval]unsigned long* retVal);
1128
+ [id(0x0000008)]
1129
+ HRESULT _stdcall RemoveField([in]short Index);
1130
+ [id(0x0000009)]
1131
+ HRESULT _stdcall GroupBy(IGroupQuery* gq, [out, retval] IRecordset** retVal);
1132
+ [id(0x000000A)]
1133
+ HRESULT _stdcall OrderBy([in] BSTR name0, [in, defaultvalue("")] BSTR name1, [in, defaultvalue("")] BSTR name2,
1134
+ [in, defaultvalue("")] BSTR name3, [in, defaultvalue("")] BSTR name4,
1135
+ [in, defaultvalue("")] BSTR name5, [in, defaultvalue("")] BSTR name6,
1136
+ [in, defaultvalue("")] BSTR name7, [in, defaultvalue("")] BSTR name8,
1137
+ [out, retval] IRecordset** retVal);
1138
+
1139
+ [id(0x000000B)]
1140
+ HRESULT _stdcall OrderByEx([in] ISortFields* SortFields, [out, retval] IRecordset** retVal);
1141
+
1142
+ [id(0x000000C)]
1143
+ HRESULT _stdcall Reverse([out, retval] IRecordset** retVal);
1144
+
1145
+ [propget,id(0x000000D)]
1146
+ HRESULT _stdcall FieldDefs([out, retval] IFieldDefs** retVal);
1147
+ [propget,id(0x000000E)]
1148
+ HRESULT _stdcall Size([out, retval]unsigned long* retVal);
1149
+
1150
+ [id(0x000000F)]
1151
+ HRESULT _stdcall MatchBy(IRecordsetQuery* gq, [out, retval] IRecordset** retVal);
1152
+
1153
+ [id(0x0000010)]
1154
+ HRESULT _stdcall Clone([out, retval] IRecordset** retVal);
1155
+
1156
+ [id(0x0000011)]
1157
+ HRESULT _stdcall AppendField([in] BSTR name, [in] eFieldType type, [in] short len);
1158
+
1159
+ };
1160
+
1161
+ [
1162
+ object,
1163
+ uuid(1EF8FE71-92AF-4E56-AD0E-30ACF31B090E),
1164
+ dual,
1165
+ nonextensible,
1166
+ pointer_default(unique)
1167
+ ]
1168
+ interface IRecord : IDispatch
1169
+ {
1170
+ [propget, id(0x0000001)]
1171
+ HRESULT _stdcall Size([out, retval] short* retVal);
1172
+ [propget, id(0x0000002)]
1173
+ HRESULT _stdcall Field([in] VARIANT Index, [out, retval] IField** retVal);
1174
+ [propget, id(0x0000003)]
1175
+ HRESULT _stdcall IsInvalidRecord( [out, retval] VARIANT_BOOL* retVal);
1176
+
1177
+ };
1178
+
1179
+ [
1180
+ object,
1181
+ uuid(687452CD-C9D8-4B24-A955-EB3B69BA02C5),
1182
+ dual,
1183
+ nonextensible,
1184
+ pointer_default(unique)
1185
+ ]
1186
+ interface IWritableRecord : IRecord
1187
+ {
1188
+ [id(0x0000010)]
1189
+ HRESULT _stdcall Save(void);
1190
+ [id(0x0000011)]
1191
+ HRESULT _stdcall Insert(void);
1192
+ [id(0x0000013)]
1193
+ HRESULT _stdcall Del([in, defaultvalue(0)]VARIANT_BOOL KeysetAlrady);
1194
+ [id(0x0000014)]
1195
+ HRESULT _stdcall Update(void);
997
1196
  [id(0x0000015)]
998
- HRESULT _stdcall IsOptimize([out, retval] VARIANT_BOOL* retVal);
1197
+ HRESULT _stdcall Read([in, defaultvalue(0)]VARIANT_BOOL KeysetAlrady, [out, retval] VARIANT_BOOL* retVal);
1198
+ [id(0x0000016)]
1199
+ HRESULT _stdcall Clear();
1200
+ [propget,id(0x0000017)]
1201
+ HRESULT _stdcall FieldDefs([out, retval] IFieldDefs** retVal);
1202
+
1203
+ };
999
1204
 
1205
+ [
1206
+ object,
1207
+ uuid(1EF8FE71-92AF-4E56-ADAE-30ACF31B09AE),
1208
+ dual,
1209
+ nonextensible,
1210
+ pointer_default(unique)
1211
+ ]
1212
+ interface IGroupQuery : IDispatch
1213
+ {
1214
+ [id(0x0000001)]
1215
+ HRESULT _stdcall KeyField([in, defaultvalue("")] BSTR Name, [in, defaultvalue("")] BSTR Name1,
1216
+ [in, defaultvalue("")] BSTR Name2, [in, defaultvalue("")] BSTR Name3,
1217
+ [in, defaultvalue("")] BSTR Name4, [in, defaultvalue("")] BSTR Name5,
1218
+ [in, defaultvalue("")] BSTR Name6, [in, defaultvalue("")] BSTR Name7,
1219
+ [in, defaultvalue("")] BSTR Name8, [in, defaultvalue("")] BSTR Name9,
1220
+ [in, defaultvalue("")] BSTR Name10, [out, retval] IGroupQuery** retVal);
1221
+
1222
+ [id(0x0000002)]
1223
+ HRESULT _stdcall AddFunction([in] eGroupFunc func
1224
+ , [in] IFieldNames* targetNames , [in, defaultvalue("")] BSTR resultName
1225
+ , [in, defaultvalue("")]VARIANT q, [out, retval] IGroupQuery** retVal);
1226
+
1227
+ [id(0x0000004)]
1228
+ HRESULT _stdcall Reset([out, retval] IGroupQuery** retVal);
1000
1229
  };
1230
+
1231
+ [
1232
+ object,
1233
+ uuid(B40B2E5A-2E5A-4D76-B392-75CFA9CD89A8),
1234
+ dual,
1235
+ nonextensible,
1236
+ pointer_default(unique)
1237
+ ]
1238
+ interface IRecordsetQuery : IDispatch
1239
+ {
1240
+ [id(0x0000004)]
1241
+ HRESULT _stdcall Reset([out, retval] IRecordsetQuery** retVal);
1242
+ [id(0x0000005)]
1243
+ HRESULT _stdcall When([in] BSTR Name, [in] BSTR Logic, [in] VARIANT Value, [out, retval] IRecordsetQuery** retVal);
1244
+ [id(0x0000006)]
1245
+ HRESULT _stdcall And([in] BSTR Name, [in] BSTR Logic, [in] VARIANT Value, [out, retval] IRecordsetQuery** retVal);
1246
+ [id(0x0000007)]
1247
+ HRESULT _stdcall Or([in] BSTR Name, [in] BSTR Logic, [in] VARIANT Value, [out, retval] IRecordsetQuery** retVal);
1248
+
1249
+ };
1250
+
1251
+ [
1252
+ object,
1253
+ uuid(4A38F70D-9D46-474E-B429-DF4EE61CDAA5),
1254
+ dual,
1255
+ nonextensible,
1256
+ pointer_default(unique)
1257
+ ]
1258
+ interface IFieldDefs : IDispatch
1259
+ {
1260
+ [id(0x0000001)]
1261
+ HRESULT _stdcall IndexByName([in] BSTR Name, [out, retval] short* retVal);
1262
+ [propget, id(0x0000002)]
1263
+ HRESULT _stdcall FieldDef([in] VARIANT Name, [out, retval] IFieldDef** retVal);
1264
+ [propget, id(0x0000003)]
1265
+ HRESULT _stdcall Size([out, retval] short* retVal);
1266
+ };
1267
+
1268
+
1269
+ [
1270
+ object,
1271
+ uuid(16781A10-8371-415D-84B2-AD2874D57572),
1272
+ dual,
1273
+ nonextensible,
1274
+ pointer_default(unique)
1275
+ ]
1276
+ interface ISortField : IDispatch
1277
+ {
1278
+ [propget, id(1)]
1279
+ HRESULT _stdcall Name([out, retval] BSTR* Value);
1280
+ [propput, id(1)]
1281
+ HRESULT _stdcall Name([in] BSTR Value);
1282
+ [propget, id(2)]
1283
+ HRESULT _stdcall Asc([out, retval] VARIANT_BOOL* Value);
1284
+ [propput, id(2)]
1285
+ HRESULT _stdcall Asc([in] VARIANT_BOOL Value);
1286
+
1287
+ };
1288
+
1289
+ [
1290
+ object,
1291
+ uuid(ED7FA0F0-2A2D-4271-98A6-9FE652353AAE),
1292
+ dual,
1293
+ nonextensible,
1294
+ pointer_default(unique)
1295
+ ]
1296
+ interface ISortFields : IDispatch
1297
+ {
1298
+ [id(1)]
1299
+ HRESULT _stdcall Add([in] BSTR Name, [in] VARIANT_BOOL asc);
1300
+ [propget, id(2)]
1301
+ HRESULT _stdcall Size([out, retval] int* Value);
1302
+ [id(3)]
1303
+ HRESULT _stdcall Item([in] int index, [out, retval] ISortField** retVal);
1304
+ [id(4)]
1305
+ HRESULT _stdcall Clear();
1306
+ };
1307
+
1308
+ [
1309
+ object,
1310
+ uuid(5A6DA657-9C4E-4BD1-8724-00480947E79D),
1311
+ dual,
1312
+ nonextensible,
1313
+ pointer_default(unique)
1314
+ ]
1315
+ interface IFieldNames : IDispatch
1316
+ {
1317
+ [id(1)]
1318
+ HRESULT _stdcall KeyField([in, defaultvalue("")] BSTR Name, [in, defaultvalue("")] BSTR Name1,
1319
+ [in, defaultvalue("")] BSTR Name2, [in, defaultvalue("")] BSTR Name3,
1320
+ [in, defaultvalue("")] BSTR Name4, [in, defaultvalue("")] BSTR Name5,
1321
+ [in, defaultvalue("")] BSTR Name6, [in, defaultvalue("")] BSTR Name7,
1322
+ [in, defaultvalue("")] BSTR Name8, [in, defaultvalue("")] BSTR Name9,
1323
+ [in, defaultvalue("")] BSTR Name10, [out, retval] IFieldNames** retVal);
1324
+ [propget, id(2)]
1325
+ HRESULT _stdcall Count([out, retval] int* Value);
1326
+ [id(3)]
1327
+ HRESULT _stdcall addValue([in] BSTR val);
1328
+ [propget, id(4)]
1329
+ HRESULT _stdcall Value([in] int index, [out, retval] BSTR* retVal);
1330
+ [id(5)]
1331
+ HRESULT _stdcall addValues([in] BSTR val, [in] BSTR delm);
1332
+ [id(6)]
1333
+ HRESULT _stdcall Reset([out, retval] IFieldNames** retVal);
1334
+ };
1335
+
1336
+ [
1337
+ object,
1338
+ uuid(CE4EBFCB-EA63-4CC3-AB24-02752C23BB36),
1339
+ dual,
1340
+ nonextensible,
1341
+ pointer_default(unique)
1342
+ ]
1343
+ interface IPooledDbManager : IDispatch
1344
+ {
1345
+ [propput, id(0x00000101)]
1346
+ HRESULT _stdcall MaxConnections([in] int n);
1347
+ [propget, id(0x00000101)]
1348
+ HRESULT _stdcall MaxConnections([out, retval] int* retVal);
1349
+ [id(0x00000103)]
1350
+ HRESULT _stdcall Reset([in,defaultvalue(5)] int waitSec);
1351
+ [id(0x00000104)]
1352
+ HRESULT _stdcall Reserve([in] int size, [in] IConnectParams* Uri);
1353
+ [propget, id(0x00000001)]
1354
+ HRESULT _stdcall Stat([out, retval] eStatus* Value);
1355
+ [id(0x00000002)]
1356
+ HRESULT _stdcall BeginTrn([in, defaultvalue(PARA_SINGLE_NOWAIT)] eLockType Bias);
1357
+ [id(0x00000003)]
1358
+ HRESULT _stdcall EndTrn(void);
1359
+ [id(0x00000004)]
1360
+ HRESULT _stdcall AbortTrn(void);
1361
+ [id(0x00000005)]
1362
+ HRESULT _stdcall BeginSnapshot(void);
1363
+ [id(0x00000006)]
1364
+ HRESULT _stdcall EndSnapshot(void);
1365
+ [id(0x00000007)]
1366
+ HRESULT _stdcall Use([in, defaultvalue(0L)] VARIANT Uri);
1367
+ [id(0x00000008)]
1368
+ HRESULT _stdcall Unuse();
1369
+ [propget, id(0x00000009)]
1370
+ HRESULT _stdcall EnableTrn([out, retval] VARIANT_BOOL* Value);
1371
+ [propget, id(0x0000000A)]
1372
+ HRESULT _stdcall Uri( [out, retval] BSTR* Uri);
1373
+ [propget, id(0x0000000B)]
1374
+ HRESULT _stdcall IsOpened([out, retval] VARIANT_BOOL* Value);
1375
+ [propget, id(0x0000000C)]
1376
+ HRESULT _stdcall ClientID([out, retval] short* Value);
1377
+ [id(0x0000000E)]
1378
+ HRESULT _stdcall Table([in] BSTR name, [out, retval]ITable** retVal);
1379
+ [id(0x0000000F)]
1380
+ HRESULT _stdcall Db([out, retval]IDatabase** retVal);
1381
+ [propput, id(0x00000010)]
1382
+ HRESULT _stdcall Option([in] __int64 Value);
1383
+ [propget, id(0x00000010)]
1384
+ HRESULT _stdcall Option([out, retval] __int64* Value);
1385
+ [propget, id(0x00000011)]
1386
+ HRESULT _stdcall Mode([out, retval] short* Value);
1387
+ };
1388
+
1389
+ [
1390
+ object,
1391
+ uuid(CA38A33C-E2E9-47CA-90F8-BF4112D7CBAC),
1392
+ dual,
1393
+ nonextensible,
1394
+ pointer_default(unique)
1395
+ ]
1396
+ interface IConnectParams : IDispatch
1397
+ {
1398
+ [id(1)]
1399
+ HRESULT _stdcall Init([in] BSTR protocol, [in] BSTR hostOrIp, [in] BSTR dbname,
1400
+ [in] BSTR schemaTable);
1401
+ [propput, id(2)]
1402
+ HRESULT _stdcall Uri([in] BSTR val);
1403
+ [propget, id(2)]
1404
+ HRESULT _stdcall Uri([out, retval] BSTR* retVal);
1405
+ [propput, id(3)]
1406
+ HRESULT _stdcall Mode([in] short val);
1407
+ [propget, id(3)]
1408
+ HRESULT _stdcall Mode([out, retval] short* retVal);
1409
+ [propput, id(4)]
1410
+ HRESULT _stdcall Type([in] short val);
1411
+ [propget, id(4)]
1412
+ HRESULT _stdcall Type([out, retval] short* retVal);
1413
+
1414
+ };
1415
+
1001
1416
  [
1002
1417
  uuid(3B712514-E2EF-4040-8A3C-BCACB839EB3E),
1003
1418
  version(1.0),
1004
1419
  ]
1005
-
1006
1420
  library transactd
1007
1421
  {
1008
1422
  importlib("stdole2.tlb");
@@ -1096,6 +1510,7 @@ library transactd
1096
1510
  coclass Field
1097
1511
  {
1098
1512
  [default] interface IField;
1513
+
1099
1514
  };
1100
1515
 
1101
1516
  [
@@ -1107,8 +1522,6 @@ library transactd
1107
1522
  [default] interface ITdVersion;
1108
1523
  };
1109
1524
 
1110
-
1111
-
1112
1525
  [
1113
1526
  uuid(CA076B05-541B-48EF-AC55-33323FB052F3)
1114
1527
  ]
@@ -1116,6 +1529,109 @@ library transactd
1116
1529
  {
1117
1530
  [default] interface IQueryBase;
1118
1531
  };
1532
+
1533
+ [
1534
+ uuid(BB90F201-61B3-47F9-A185-343176B046DF)
1535
+ ]
1536
+ coclass ActiveTable
1537
+ {
1538
+ [default] interface IActiveTable;
1539
+ };
1540
+
1541
+ [
1542
+ uuid(3A5A39FA-15EE-459E-BE8C-5769A97DA27B)
1543
+ ,noncreatable
1544
+ ]
1545
+ coclass Recordset
1546
+ {
1547
+ [default] interface IRecordset;
1548
+
1549
+ };
1550
+
1551
+ [
1552
+ uuid(3729705B-AA47-4592-ABE3-844B20E8A141)
1553
+ ,noncreatable
1554
+ ]
1555
+ coclass Record
1556
+ {
1557
+ [default] interface IRecord;
1558
+
1559
+ };
1560
+
1561
+ [
1562
+ uuid(1D51D5EE-41CC-4D83-A8D6-C297D25C3D87)
1563
+ ]
1564
+ coclass WritableRecord
1565
+ {
1566
+ [default] interface IWritableRecord;
1567
+ };
1568
+
1569
+ [
1570
+ uuid(8EB78589-1084-4546-A826-20B615831EFF)
1571
+ ]
1572
+ coclass GroupQuery
1573
+ {
1574
+ [default] interface IGroupQuery;
1575
+ };
1576
+
1577
+ [
1578
+ uuid(611990AE-89AA-49AC-8B17-B518BF6A7729)
1579
+ ]
1580
+ coclass RecordsetQuery
1581
+ {
1582
+ [default] interface IRecordsetQuery;
1583
+ };
1584
+
1585
+ [
1586
+ uuid(4A92626B-03B9-45F8-B952-1E696D23752E)
1587
+ ,noncreatable
1588
+ ]
1589
+ coclass FieldDefs
1590
+ {
1591
+ [default] interface IFieldDefs;
1592
+ };
1593
+
1594
+ [
1595
+ uuid(7677BF30-C7C5-4AD5-AF86-99A21846A122)
1596
+ ,noncreatable
1597
+ ]
1598
+ coclass SortField
1599
+ {
1600
+ [default] interface ISortField;
1601
+ };
1602
+
1603
+ [
1604
+ uuid(8C21D933-1DF0-4224-ADCE-8B40ADA9B403)
1605
+ ]
1606
+ coclass SortFields
1607
+ {
1608
+ [default] interface ISortFields;
1609
+ };
1610
+
1611
+ [
1612
+ uuid(19B74AFC-50A3-4265-A28F-E1B389EDC5AA)
1613
+ ]
1614
+ coclass FieldNames
1615
+ {
1616
+ [default] interface IFieldNames;
1617
+ };
1618
+
1619
+ [
1620
+ uuid(44CDEAF9-08CD-4EE8-B039-795A29C06E09)
1621
+ ]
1622
+ coclass PooledDbManager
1623
+ {
1624
+ [default] interface IPooledDbManager;
1625
+ };
1626
+
1627
+ [
1628
+ uuid(0FB25FFA-9F0E-4C66-A40E-C5DAD40BC71B)
1629
+ ]
1630
+ coclass ConnectParams
1631
+ {
1632
+ [default] interface IConnectParams;
1633
+ };
1634
+
1119
1635
  };
1120
1636
 
1121
1637
  import "shobjidl.idl";