sqlext.h 56 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef __SQLEXT
  7. #define __SQLEXT
  8. #include <sql.h>
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. #define SQL_SPEC_MAJOR 3
  13. #define SQL_SPEC_MINOR 52
  14. #define SQL_SPEC_STRING "03.52"
  15. #define SQL_SQLSTATE_SIZE 5
  16. #define SQL_MAX_DSN_LENGTH 32
  17. #define SQL_MAX_OPTION_STRING_LENGTH 256
  18. #if (ODBCVER < 0x0300)
  19. #define SQL_NO_DATA_FOUND 100
  20. #else
  21. #define SQL_NO_DATA_FOUND SQL_NO_DATA
  22. #endif
  23. #if (ODBCVER >= 0x0300)
  24. #define SQL_HANDLE_SENV 5
  25. #endif
  26. #if (ODBCVER >= 0x0300)
  27. #define SQL_ATTR_ODBC_VERSION 200
  28. #define SQL_ATTR_CONNECTION_POOLING 201
  29. #define SQL_ATTR_CP_MATCH 202
  30. #endif
  31. #if (ODBCVER >= 0x0300)
  32. #define SQL_CP_OFF __MSABI_LONG(0U)
  33. #define SQL_CP_ONE_PER_DRIVER __MSABI_LONG(1U)
  34. #define SQL_CP_ONE_PER_HENV __MSABI_LONG(2U)
  35. #define SQL_CP_DEFAULT SQL_CP_OFF
  36. #define SQL_CP_STRICT_MATCH __MSABI_LONG(0U)
  37. #define SQL_CP_RELAXED_MATCH __MSABI_LONG(1U)
  38. #define SQL_CP_MATCH_DEFAULT SQL_CP_STRICT_MATCH
  39. #define SQL_OV_ODBC2 __MSABI_LONG(2U)
  40. #define SQL_OV_ODBC3 __MSABI_LONG(3U)
  41. #endif
  42. #define SQL_ACCESS_MODE 101
  43. #define SQL_AUTOCOMMIT 102
  44. #define SQL_LOGIN_TIMEOUT 103
  45. #define SQL_OPT_TRACE 104
  46. #define SQL_OPT_TRACEFILE 105
  47. #define SQL_TRANSLATE_DLL 106
  48. #define SQL_TRANSLATE_OPTION 107
  49. #define SQL_TXN_ISOLATION 108
  50. #define SQL_CURRENT_QUALIFIER 109
  51. #define SQL_ODBC_CURSORS 110
  52. #define SQL_QUIET_MODE 111
  53. #define SQL_PACKET_SIZE 112
  54. #if (ODBCVER >= 0x0300)
  55. #define SQL_ATTR_ACCESS_MODE SQL_ACCESS_MODE
  56. #define SQL_ATTR_AUTOCOMMIT SQL_AUTOCOMMIT
  57. #define SQL_ATTR_CONNECTION_TIMEOUT 113
  58. #define SQL_ATTR_CURRENT_CATALOG SQL_CURRENT_QUALIFIER
  59. #define SQL_ATTR_DISCONNECT_BEHAVIOR 114
  60. #define SQL_ATTR_ENLIST_IN_DTC 1207
  61. #define SQL_ATTR_ENLIST_IN_XA 1208
  62. #define SQL_ATTR_LOGIN_TIMEOUT SQL_LOGIN_TIMEOUT
  63. #define SQL_ATTR_ODBC_CURSORS SQL_ODBC_CURSORS
  64. #define SQL_ATTR_PACKET_SIZE SQL_PACKET_SIZE
  65. #define SQL_ATTR_QUIET_MODE SQL_QUIET_MODE
  66. #define SQL_ATTR_TRACE SQL_OPT_TRACE
  67. #define SQL_ATTR_TRACEFILE SQL_OPT_TRACEFILE
  68. #define SQL_ATTR_TRANSLATE_LIB SQL_TRANSLATE_DLL
  69. #define SQL_ATTR_TRANSLATE_OPTION SQL_TRANSLATE_OPTION
  70. #define SQL_ATTR_TXN_ISOLATION SQL_TXN_ISOLATION
  71. #endif
  72. #define SQL_ATTR_CONNECTION_DEAD 1209
  73. #if (ODBCVER >= 0x0351)
  74. #define SQL_ATTR_ANSI_APP 115
  75. #endif
  76. #if (ODBCVER < 0x0300)
  77. #define SQL_CONNECT_OPT_DRVR_START 1000
  78. #endif
  79. #if (ODBCVER < 0x0300)
  80. #define SQL_CONN_OPT_MAX SQL_PACKET_SIZE
  81. #define SQL_CONN_OPT_MIN SQL_ACCESS_MODE
  82. #endif
  83. #define SQL_MODE_READ_WRITE __MSABI_LONG(0U)
  84. #define SQL_MODE_READ_ONLY __MSABI_LONG(1U)
  85. #define SQL_MODE_DEFAULT SQL_MODE_READ_WRITE
  86. #define SQL_AUTOCOMMIT_OFF __MSABI_LONG(0U)
  87. #define SQL_AUTOCOMMIT_ON __MSABI_LONG(1U)
  88. #define SQL_AUTOCOMMIT_DEFAULT SQL_AUTOCOMMIT_ON
  89. #define SQL_LOGIN_TIMEOUT_DEFAULT __MSABI_LONG(15U)
  90. #define SQL_OPT_TRACE_OFF __MSABI_LONG(0U)
  91. #define SQL_OPT_TRACE_ON __MSABI_LONG(1U)
  92. #define SQL_OPT_TRACE_DEFAULT SQL_OPT_TRACE_OFF
  93. #define SQL_OPT_TRACE_FILE_DEFAULT "\\SQL.LOG"
  94. #define SQL_CUR_USE_IF_NEEDED __MSABI_LONG(0U)
  95. #define SQL_CUR_USE_ODBC __MSABI_LONG(1U)
  96. #define SQL_CUR_USE_DRIVER __MSABI_LONG(2U)
  97. #define SQL_CUR_DEFAULT SQL_CUR_USE_DRIVER
  98. #if (ODBCVER >= 0x0300)
  99. #define SQL_DB_RETURN_TO_POOL __MSABI_LONG(0U)
  100. #define SQL_DB_DISCONNECT __MSABI_LONG(1U)
  101. #define SQL_DB_DEFAULT SQL_DB_RETURN_TO_POOL
  102. #define SQL_DTC_DONE __MSABI_LONG(0)
  103. #endif
  104. #define SQL_CD_TRUE __MSABI_LONG(1)
  105. #define SQL_CD_FALSE __MSABI_LONG(0)
  106. #if (ODBCVER >= 0x0351)
  107. #define SQL_AA_TRUE __MSABI_LONG(1)
  108. #define SQL_AA_FALSE __MSABI_LONG(0)
  109. #endif
  110. #define SQL_QUERY_TIMEOUT 0
  111. #define SQL_MAX_ROWS 1
  112. #define SQL_NOSCAN 2
  113. #define SQL_MAX_LENGTH 3
  114. #define SQL_ASYNC_ENABLE 4
  115. #define SQL_BIND_TYPE 5
  116. #define SQL_CURSOR_TYPE 6
  117. #define SQL_CONCURRENCY 7
  118. #define SQL_KEYSET_SIZE 8
  119. #define SQL_ROWSET_SIZE 9
  120. #define SQL_SIMULATE_CURSOR 10
  121. #define SQL_RETRIEVE_DATA 11
  122. #define SQL_USE_BOOKMARKS 12
  123. #define SQL_GET_BOOKMARK 13
  124. #define SQL_ROW_NUMBER 14
  125. #if (ODBCVER >= 0x0300)
  126. #define SQL_ATTR_ASYNC_ENABLE 4
  127. #define SQL_ATTR_CONCURRENCY SQL_CONCURRENCY
  128. #define SQL_ATTR_CURSOR_TYPE SQL_CURSOR_TYPE
  129. #define SQL_ATTR_ENABLE_AUTO_IPD 15
  130. #define SQL_ATTR_FETCH_BOOKMARK_PTR 16
  131. #define SQL_ATTR_KEYSET_SIZE SQL_KEYSET_SIZE
  132. #define SQL_ATTR_MAX_LENGTH SQL_MAX_LENGTH
  133. #define SQL_ATTR_MAX_ROWS SQL_MAX_ROWS
  134. #define SQL_ATTR_NOSCAN SQL_NOSCAN
  135. #define SQL_ATTR_PARAM_BIND_OFFSET_PTR 17
  136. #define SQL_ATTR_PARAM_BIND_TYPE 18
  137. #define SQL_ATTR_PARAM_OPERATION_PTR 19
  138. #define SQL_ATTR_PARAM_STATUS_PTR 20
  139. #define SQL_ATTR_PARAMS_PROCESSED_PTR 21
  140. #define SQL_ATTR_PARAMSET_SIZE 22
  141. #define SQL_ATTR_QUERY_TIMEOUT SQL_QUERY_TIMEOUT
  142. #define SQL_ATTR_RETRIEVE_DATA SQL_RETRIEVE_DATA
  143. #define SQL_ATTR_ROW_BIND_OFFSET_PTR 23
  144. #define SQL_ATTR_ROW_BIND_TYPE SQL_BIND_TYPE
  145. #define SQL_ATTR_ROW_NUMBER SQL_ROW_NUMBER
  146. #define SQL_ATTR_ROW_OPERATION_PTR 24
  147. #define SQL_ATTR_ROW_STATUS_PTR 25
  148. #define SQL_ATTR_ROWS_FETCHED_PTR 26
  149. #define SQL_ATTR_ROW_ARRAY_SIZE 27
  150. #define SQL_ATTR_SIMULATE_CURSOR SQL_SIMULATE_CURSOR
  151. #define SQL_ATTR_USE_BOOKMARKS SQL_USE_BOOKMARKS
  152. #endif
  153. #if (ODBCVER < 0x0300)
  154. #define SQL_STMT_OPT_MAX SQL_ROW_NUMBER
  155. #define SQL_STMT_OPT_MIN SQL_QUERY_TIMEOUT
  156. #endif
  157. #if (ODBCVER >= 0x0300)
  158. #define SQL_COL_PRED_CHAR SQL_LIKE_ONLY
  159. #define SQL_COL_PRED_BASIC SQL_ALL_EXCEPT_LIKE
  160. #endif
  161. #if (ODBCVER >= 0x0300)
  162. #define SQL_IS_POINTER (-4)
  163. #define SQL_IS_UINTEGER (-5)
  164. #define SQL_IS_INTEGER (-6)
  165. #define SQL_IS_USMALLINT (-7)
  166. #define SQL_IS_SMALLINT (-8)
  167. #endif
  168. #if (ODBCVER >= 0x0300)
  169. #define SQL_PARAM_BIND_BY_COLUMN __MSABI_LONG(0U)
  170. #define SQL_PARAM_BIND_TYPE_DEFAULT SQL_PARAM_BIND_BY_COLUMN
  171. #endif
  172. #define SQL_QUERY_TIMEOUT_DEFAULT __MSABI_LONG(0U)
  173. #define SQL_MAX_ROWS_DEFAULT __MSABI_LONG(0U)
  174. #define SQL_NOSCAN_OFF __MSABI_LONG(0U)
  175. #define SQL_NOSCAN_ON __MSABI_LONG(1U)
  176. #define SQL_NOSCAN_DEFAULT SQL_NOSCAN_OFF
  177. #define SQL_MAX_LENGTH_DEFAULT __MSABI_LONG(0U)
  178. #define SQL_ASYNC_ENABLE_OFF __MSABI_LONG(0U)
  179. #define SQL_ASYNC_ENABLE_ON __MSABI_LONG(1U)
  180. #define SQL_ASYNC_ENABLE_DEFAULT SQL_ASYNC_ENABLE_OFF
  181. #define SQL_BIND_BY_COLUMN __MSABI_LONG(0U)
  182. #define SQL_BIND_TYPE_DEFAULT SQL_BIND_BY_COLUMN
  183. #define SQL_CONCUR_READ_ONLY 1
  184. #define SQL_CONCUR_LOCK 2
  185. #define SQL_CONCUR_ROWVER 3
  186. #define SQL_CONCUR_VALUES 4
  187. #define SQL_CONCUR_DEFAULT SQL_CONCUR_READ_ONLY
  188. #define SQL_CURSOR_FORWARD_ONLY __MSABI_LONG(0U)
  189. #define SQL_CURSOR_KEYSET_DRIVEN __MSABI_LONG(1U)
  190. #define SQL_CURSOR_DYNAMIC __MSABI_LONG(2U)
  191. #define SQL_CURSOR_STATIC __MSABI_LONG(3U)
  192. #define SQL_CURSOR_TYPE_DEFAULT SQL_CURSOR_FORWARD_ONLY
  193. #define SQL_ROWSET_SIZE_DEFAULT __MSABI_LONG(1U)
  194. #define SQL_KEYSET_SIZE_DEFAULT __MSABI_LONG(0U)
  195. #define SQL_SC_NON_UNIQUE __MSABI_LONG(0U)
  196. #define SQL_SC_TRY_UNIQUE __MSABI_LONG(1U)
  197. #define SQL_SC_UNIQUE __MSABI_LONG(2U)
  198. #define SQL_RD_OFF __MSABI_LONG(0U)
  199. #define SQL_RD_ON __MSABI_LONG(1U)
  200. #define SQL_RD_DEFAULT SQL_RD_ON
  201. #define SQL_UB_OFF __MSABI_LONG(0U)
  202. #define SQL_UB_ON __MSABI_LONG(01U)
  203. #define SQL_UB_DEFAULT SQL_UB_OFF
  204. #if (ODBCVER >= 0x0300)
  205. #define SQL_UB_FIXED SQL_UB_ON
  206. #define SQL_UB_VARIABLE __MSABI_LONG(2U)
  207. #endif
  208. #if (ODBCVER >= 0x0300)
  209. #define SQL_DESC_ARRAY_SIZE 20
  210. #define SQL_DESC_ARRAY_STATUS_PTR 21
  211. #define SQL_DESC_AUTO_UNIQUE_VALUE SQL_COLUMN_AUTO_INCREMENT
  212. #define SQL_DESC_BASE_COLUMN_NAME 22
  213. #define SQL_DESC_BASE_TABLE_NAME 23
  214. #define SQL_DESC_BIND_OFFSET_PTR 24
  215. #define SQL_DESC_BIND_TYPE 25
  216. #define SQL_DESC_CASE_SENSITIVE SQL_COLUMN_CASE_SENSITIVE
  217. #define SQL_DESC_CATALOG_NAME SQL_COLUMN_QUALIFIER_NAME
  218. #define SQL_DESC_CONCISE_TYPE SQL_COLUMN_TYPE
  219. #define SQL_DESC_DATETIME_INTERVAL_PRECISION 26
  220. #define SQL_DESC_DISPLAY_SIZE SQL_COLUMN_DISPLAY_SIZE
  221. #define SQL_DESC_FIXED_PREC_SCALE SQL_COLUMN_MONEY
  222. #define SQL_DESC_LABEL SQL_COLUMN_LABEL
  223. #define SQL_DESC_LITERAL_PREFIX 27
  224. #define SQL_DESC_LITERAL_SUFFIX 28
  225. #define SQL_DESC_LOCAL_TYPE_NAME 29
  226. #define SQL_DESC_MAXIMUM_SCALE 30
  227. #define SQL_DESC_MINIMUM_SCALE 31
  228. #define SQL_DESC_NUM_PREC_RADIX 32
  229. #define SQL_DESC_PARAMETER_TYPE 33
  230. #define SQL_DESC_ROWS_PROCESSED_PTR 34
  231. #if (ODBCVER >= 0x0350)
  232. #define SQL_DESC_ROWVER 35
  233. #endif
  234. #define SQL_DESC_SCHEMA_NAME SQL_COLUMN_OWNER_NAME
  235. #define SQL_DESC_SEARCHABLE SQL_COLUMN_SEARCHABLE
  236. #define SQL_DESC_TYPE_NAME SQL_COLUMN_TYPE_NAME
  237. #define SQL_DESC_TABLE_NAME SQL_COLUMN_TABLE_NAME
  238. #define SQL_DESC_UNSIGNED SQL_COLUMN_UNSIGNED
  239. #define SQL_DESC_UPDATABLE SQL_COLUMN_UPDATABLE
  240. #endif
  241. #if (ODBCVER >= 0x0300)
  242. #define SQL_DIAG_CURSOR_ROW_COUNT (-1249)
  243. #define SQL_DIAG_ROW_NUMBER (-1248)
  244. #define SQL_DIAG_COLUMN_NUMBER (-1247)
  245. #endif
  246. #define SQL_DATE 9
  247. #if (ODBCVER >= 0x0300)
  248. #define SQL_INTERVAL 10
  249. #endif
  250. #define SQL_TIME 10
  251. #define SQL_TIMESTAMP 11
  252. #define SQL_LONGVARCHAR (-1)
  253. #define SQL_BINARY (-2)
  254. #define SQL_VARBINARY (-3)
  255. #define SQL_LONGVARBINARY (-4)
  256. #define SQL_BIGINT (-5)
  257. #define SQL_TINYINT (-6)
  258. #define SQL_BIT (-7)
  259. #if (ODBCVER >= 0x0350)
  260. #define SQL_GUID (-11)
  261. #endif
  262. #if (ODBCVER >= 0x0300)
  263. #define SQL_CODE_YEAR 1
  264. #define SQL_CODE_MONTH 2
  265. #define SQL_CODE_DAY 3
  266. #define SQL_CODE_HOUR 4
  267. #define SQL_CODE_MINUTE 5
  268. #define SQL_CODE_SECOND 6
  269. #define SQL_CODE_YEAR_TO_MONTH 7
  270. #define SQL_CODE_DAY_TO_HOUR 8
  271. #define SQL_CODE_DAY_TO_MINUTE 9
  272. #define SQL_CODE_DAY_TO_SECOND 10
  273. #define SQL_CODE_HOUR_TO_MINUTE 11
  274. #define SQL_CODE_HOUR_TO_SECOND 12
  275. #define SQL_CODE_MINUTE_TO_SECOND 13
  276. #define SQL_INTERVAL_YEAR (100 + SQL_CODE_YEAR)
  277. #define SQL_INTERVAL_MONTH (100 + SQL_CODE_MONTH)
  278. #define SQL_INTERVAL_DAY (100 + SQL_CODE_DAY)
  279. #define SQL_INTERVAL_HOUR (100 + SQL_CODE_HOUR)
  280. #define SQL_INTERVAL_MINUTE (100 + SQL_CODE_MINUTE)
  281. #define SQL_INTERVAL_SECOND (100 + SQL_CODE_SECOND)
  282. #define SQL_INTERVAL_YEAR_TO_MONTH (100 + SQL_CODE_YEAR_TO_MONTH)
  283. #define SQL_INTERVAL_DAY_TO_HOUR (100 + SQL_CODE_DAY_TO_HOUR)
  284. #define SQL_INTERVAL_DAY_TO_MINUTE (100 + SQL_CODE_DAY_TO_MINUTE)
  285. #define SQL_INTERVAL_DAY_TO_SECOND (100 + SQL_CODE_DAY_TO_SECOND)
  286. #define SQL_INTERVAL_HOUR_TO_MINUTE (100 + SQL_CODE_HOUR_TO_MINUTE)
  287. #define SQL_INTERVAL_HOUR_TO_SECOND (100 + SQL_CODE_HOUR_TO_SECOND)
  288. #define SQL_INTERVAL_MINUTE_TO_SECOND (100 + SQL_CODE_MINUTE_TO_SECOND)
  289. #else
  290. #define SQL_INTERVAL_YEAR (-80)
  291. #define SQL_INTERVAL_MONTH (-81)
  292. #define SQL_INTERVAL_YEAR_TO_MONTH (-82)
  293. #define SQL_INTERVAL_DAY (-83)
  294. #define SQL_INTERVAL_HOUR (-84)
  295. #define SQL_INTERVAL_MINUTE (-85)
  296. #define SQL_INTERVAL_SECOND (-86)
  297. #define SQL_INTERVAL_DAY_TO_HOUR (-87)
  298. #define SQL_INTERVAL_DAY_TO_MINUTE (-88)
  299. #define SQL_INTERVAL_DAY_TO_SECOND (-89)
  300. #define SQL_INTERVAL_HOUR_TO_MINUTE (-90)
  301. #define SQL_INTERVAL_HOUR_TO_SECOND (-91)
  302. #define SQL_INTERVAL_MINUTE_TO_SECOND (-92)
  303. #endif
  304. #if (ODBCVER <= 0x0300)
  305. #define SQL_UNICODE (-95)
  306. #define SQL_UNICODE_VARCHAR (-96)
  307. #define SQL_UNICODE_LONGVARCHAR (-97)
  308. #define SQL_UNICODE_CHAR SQL_UNICODE
  309. #else
  310. #define SQL_UNICODE SQL_WCHAR
  311. #define SQL_UNICODE_VARCHAR SQL_WVARCHAR
  312. #define SQL_UNICODE_LONGVARCHAR SQL_WLONGVARCHAR
  313. #define SQL_UNICODE_CHAR SQL_WCHAR
  314. #endif
  315. #if (ODBCVER < 0x0300)
  316. #define SQL_TYPE_DRIVER_START SQL_INTERVAL_YEAR
  317. #define SQL_TYPE_DRIVER_END SQL_UNICODE_LONGVARCHAR
  318. #endif
  319. #define SQL_C_CHAR SQL_CHAR
  320. #define SQL_C_LONG SQL_INTEGER
  321. #define SQL_C_SHORT SQL_SMALLINT
  322. #define SQL_C_FLOAT SQL_REAL
  323. #define SQL_C_DOUBLE SQL_DOUBLE
  324. #if (ODBCVER >= 0x0300)
  325. #define SQL_C_NUMERIC SQL_NUMERIC
  326. #endif
  327. #define SQL_C_DEFAULT 99
  328. #define SQL_SIGNED_OFFSET (-20)
  329. #define SQL_UNSIGNED_OFFSET (-22)
  330. #define SQL_C_DATE SQL_DATE
  331. #define SQL_C_TIME SQL_TIME
  332. #define SQL_C_TIMESTAMP SQL_TIMESTAMP
  333. #if (ODBCVER >= 0x0300)
  334. #define SQL_C_TYPE_DATE SQL_TYPE_DATE
  335. #define SQL_C_TYPE_TIME SQL_TYPE_TIME
  336. #define SQL_C_TYPE_TIMESTAMP SQL_TYPE_TIMESTAMP
  337. #define SQL_C_INTERVAL_YEAR SQL_INTERVAL_YEAR
  338. #define SQL_C_INTERVAL_MONTH SQL_INTERVAL_MONTH
  339. #define SQL_C_INTERVAL_DAY SQL_INTERVAL_DAY
  340. #define SQL_C_INTERVAL_HOUR SQL_INTERVAL_HOUR
  341. #define SQL_C_INTERVAL_MINUTE SQL_INTERVAL_MINUTE
  342. #define SQL_C_INTERVAL_SECOND SQL_INTERVAL_SECOND
  343. #define SQL_C_INTERVAL_YEAR_TO_MONTH SQL_INTERVAL_YEAR_TO_MONTH
  344. #define SQL_C_INTERVAL_DAY_TO_HOUR SQL_INTERVAL_DAY_TO_HOUR
  345. #define SQL_C_INTERVAL_DAY_TO_MINUTE SQL_INTERVAL_DAY_TO_MINUTE
  346. #define SQL_C_INTERVAL_DAY_TO_SECOND SQL_INTERVAL_DAY_TO_SECOND
  347. #define SQL_C_INTERVAL_HOUR_TO_MINUTE SQL_INTERVAL_HOUR_TO_MINUTE
  348. #define SQL_C_INTERVAL_HOUR_TO_SECOND SQL_INTERVAL_HOUR_TO_SECOND
  349. #define SQL_C_INTERVAL_MINUTE_TO_SECOND SQL_INTERVAL_MINUTE_TO_SECOND
  350. #endif
  351. #define SQL_C_BINARY SQL_BINARY
  352. #define SQL_C_BIT SQL_BIT
  353. #if (ODBCVER >= 0x0300)
  354. #define SQL_C_SBIGINT (SQL_BIGINT+SQL_SIGNED_OFFSET)
  355. #define SQL_C_UBIGINT (SQL_BIGINT+SQL_UNSIGNED_OFFSET)
  356. #endif
  357. #define SQL_C_TINYINT SQL_TINYINT
  358. #define SQL_C_SLONG (SQL_C_LONG+SQL_SIGNED_OFFSET)
  359. #define SQL_C_SSHORT (SQL_C_SHORT+SQL_SIGNED_OFFSET)
  360. #define SQL_C_STINYINT (SQL_TINYINT+SQL_SIGNED_OFFSET)
  361. #define SQL_C_ULONG (SQL_C_LONG+SQL_UNSIGNED_OFFSET)
  362. #define SQL_C_USHORT (SQL_C_SHORT+SQL_UNSIGNED_OFFSET)
  363. #define SQL_C_UTINYINT (SQL_TINYINT+SQL_UNSIGNED_OFFSET)
  364. #ifdef _WIN64
  365. #define SQL_C_BOOKMARK SQL_C_UBIGINT
  366. #else
  367. #define SQL_C_BOOKMARK SQL_C_ULONG
  368. #endif
  369. #if (ODBCVER >= 0x0350)
  370. #define SQL_C_GUID SQL_GUID
  371. #endif
  372. #define SQL_TYPE_NULL 0
  373. #if (ODBCVER < 0x0300)
  374. #define SQL_TYPE_MIN SQL_BIT
  375. #define SQL_TYPE_MAX SQL_VARCHAR
  376. #endif
  377. #if (ODBCVER >= 0x0300)
  378. #define SQL_C_VARBOOKMARK SQL_C_BINARY
  379. #endif
  380. #if (ODBCVER >= 0x0300)
  381. #define SQL_NO_ROW_NUMBER (-1)
  382. #define SQL_NO_COLUMN_NUMBER (-1)
  383. #define SQL_ROW_NUMBER_UNKNOWN (-2)
  384. #define SQL_COLUMN_NUMBER_UNKNOWN (-2)
  385. #endif
  386. #define SQL_DEFAULT_PARAM (-5)
  387. #define SQL_IGNORE (-6)
  388. #if (ODBCVER >= 0x0300)
  389. #define SQL_COLUMN_IGNORE SQL_IGNORE
  390. #endif
  391. #define SQL_LEN_DATA_AT_EXEC_OFFSET (-100)
  392. #define SQL_LEN_DATA_AT_EXEC(length) (-(length)+SQL_LEN_DATA_AT_EXEC_OFFSET)
  393. #define SQL_LEN_BINARY_ATTR_OFFSET (-100)
  394. #define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET)
  395. #define SQL_PARAM_TYPE_DEFAULT SQL_PARAM_INPUT_OUTPUT
  396. #define SQL_SETPARAM_VALUE_MAX (__MSABI_LONG(-1))
  397. #define SQL_COLUMN_COUNT 0
  398. #define SQL_COLUMN_NAME 1
  399. #define SQL_COLUMN_TYPE 2
  400. #define SQL_COLUMN_LENGTH 3
  401. #define SQL_COLUMN_PRECISION 4
  402. #define SQL_COLUMN_SCALE 5
  403. #define SQL_COLUMN_DISPLAY_SIZE 6
  404. #define SQL_COLUMN_NULLABLE 7
  405. #define SQL_COLUMN_UNSIGNED 8
  406. #define SQL_COLUMN_MONEY 9
  407. #define SQL_COLUMN_UPDATABLE 10
  408. #define SQL_COLUMN_AUTO_INCREMENT 11
  409. #define SQL_COLUMN_CASE_SENSITIVE 12
  410. #define SQL_COLUMN_SEARCHABLE 13
  411. #define SQL_COLUMN_TYPE_NAME 14
  412. #define SQL_COLUMN_TABLE_NAME 15
  413. #define SQL_COLUMN_OWNER_NAME 16
  414. #define SQL_COLUMN_QUALIFIER_NAME 17
  415. #define SQL_COLUMN_LABEL 18
  416. #define SQL_COLATT_OPT_MAX SQL_COLUMN_LABEL
  417. #if (ODBCVER < 0x0300)
  418. #define SQL_COLUMN_DRIVER_START 1000
  419. #endif
  420. #define SQL_COLATT_OPT_MIN SQL_COLUMN_COUNT
  421. #define SQL_ATTR_READONLY 0
  422. #define SQL_ATTR_WRITE 1
  423. #define SQL_ATTR_READWRITE_UNKNOWN 2
  424. #define SQL_UNSEARCHABLE 0
  425. #define SQL_LIKE_ONLY 1
  426. #define SQL_ALL_EXCEPT_LIKE 2
  427. #define SQL_SEARCHABLE 3
  428. #define SQL_PRED_SEARCHABLE SQL_SEARCHABLE
  429. #define SQL_NO_TOTAL (-4)
  430. #if (ODBCVER >= 0x0300)
  431. #define SQL_API_SQLALLOCHANDLESTD 73
  432. #define SQL_API_SQLBULKOPERATIONS 24
  433. #endif
  434. #define SQL_API_SQLBINDPARAMETER 72
  435. #define SQL_API_SQLBROWSECONNECT 55
  436. #define SQL_API_SQLCOLATTRIBUTES 6
  437. #define SQL_API_SQLCOLUMNPRIVILEGES 56
  438. #define SQL_API_SQLDESCRIBEPARAM 58
  439. #define SQL_API_SQLDRIVERCONNECT 41
  440. #define SQL_API_SQLDRIVERS 71
  441. #define SQL_API_SQLEXTENDEDFETCH 59
  442. #define SQL_API_SQLFOREIGNKEYS 60
  443. #define SQL_API_SQLMORERESULTS 61
  444. #define SQL_API_SQLNATIVESQL 62
  445. #define SQL_API_SQLNUMPARAMS 63
  446. #define SQL_API_SQLPARAMOPTIONS 64
  447. #define SQL_API_SQLPRIMARYKEYS 65
  448. #define SQL_API_SQLPROCEDURECOLUMNS 66
  449. #define SQL_API_SQLPROCEDURES 67
  450. #define SQL_API_SQLSETPOS 68
  451. #define SQL_API_SQLSETSCROLLOPTIONS 69
  452. #define SQL_API_SQLTABLEPRIVILEGES 70
  453. #if (ODBCVER < 0x0300)
  454. #define SQL_EXT_API_LAST SQL_API_SQLBINDPARAMETER
  455. #define SQL_NUM_FUNCTIONS 23
  456. #define SQL_EXT_API_START 40
  457. #define SQL_NUM_EXTENSIONS (SQL_EXT_API_LAST-SQL_EXT_API_START+1)
  458. #endif
  459. #define SQL_API_ALL_FUNCTIONS 0
  460. #define SQL_API_LOADBYORDINAL 199
  461. #if (ODBCVER >= 0x0300)
  462. #define SQL_API_ODBC3_ALL_FUNCTIONS 999
  463. #define SQL_API_ODBC3_ALL_FUNCTIONS_SIZE 250
  464. #define SQL_FUNC_EXISTS(pfExists,uwAPI) ((*(((UWORD*) (pfExists)) + ((uwAPI) >> 4)) & (1 << ((uwAPI) & 0x000F))) ? SQL_TRUE : SQL_FALSE)
  465. #endif
  466. #define SQL_INFO_FIRST 0
  467. #define SQL_ACTIVE_CONNECTIONS 0
  468. #define SQL_ACTIVE_STATEMENTS 1
  469. #define SQL_DRIVER_HDBC 3
  470. #define SQL_DRIVER_HENV 4
  471. #define SQL_DRIVER_HSTMT 5
  472. #define SQL_DRIVER_NAME 6
  473. #define SQL_DRIVER_VER 7
  474. #define SQL_ODBC_API_CONFORMANCE 9
  475. #define SQL_ODBC_VER 10
  476. #define SQL_ROW_UPDATES 11
  477. #define SQL_ODBC_SAG_CLI_CONFORMANCE 12
  478. #define SQL_ODBC_SQL_CONFORMANCE 15
  479. #define SQL_PROCEDURES 21
  480. #define SQL_CONCAT_NULL_BEHAVIOR 22
  481. #define SQL_CURSOR_ROLLBACK_BEHAVIOR 24
  482. #define SQL_EXPRESSIONS_IN_ORDERBY 27
  483. #define SQL_MAX_OWNER_NAME_LEN 32
  484. #define SQL_MAX_PROCEDURE_NAME_LEN 33
  485. #define SQL_MAX_QUALIFIER_NAME_LEN 34
  486. #define SQL_MULT_RESULT_SETS 36
  487. #define SQL_MULTIPLE_ACTIVE_TXN 37
  488. #define SQL_OUTER_JOINS 38
  489. #define SQL_OWNER_TERM 39
  490. #define SQL_PROCEDURE_TERM 40
  491. #define SQL_QUALIFIER_NAME_SEPARATOR 41
  492. #define SQL_QUALIFIER_TERM 42
  493. #define SQL_SCROLL_OPTIONS 44
  494. #define SQL_TABLE_TERM 45
  495. #define SQL_CONVERT_FUNCTIONS 48
  496. #define SQL_NUMERIC_FUNCTIONS 49
  497. #define SQL_STRING_FUNCTIONS 50
  498. #define SQL_SYSTEM_FUNCTIONS 51
  499. #define SQL_TIMEDATE_FUNCTIONS 52
  500. #define SQL_CONVERT_BIGINT 53
  501. #define SQL_CONVERT_BINARY 54
  502. #define SQL_CONVERT_BIT 55
  503. #define SQL_CONVERT_CHAR 56
  504. #define SQL_CONVERT_DATE 57
  505. #define SQL_CONVERT_DECIMAL 58
  506. #define SQL_CONVERT_DOUBLE 59
  507. #define SQL_CONVERT_FLOAT 60
  508. #define SQL_CONVERT_INTEGER 61
  509. #define SQL_CONVERT_LONGVARCHAR 62
  510. #define SQL_CONVERT_NUMERIC 63
  511. #define SQL_CONVERT_REAL 64
  512. #define SQL_CONVERT_SMALLINT 65
  513. #define SQL_CONVERT_TIME 66
  514. #define SQL_CONVERT_TIMESTAMP 67
  515. #define SQL_CONVERT_TINYINT 68
  516. #define SQL_CONVERT_VARBINARY 69
  517. #define SQL_CONVERT_VARCHAR 70
  518. #define SQL_CONVERT_LONGVARBINARY 71
  519. #define SQL_ODBC_SQL_OPT_IEF 73
  520. #define SQL_CORRELATION_NAME 74
  521. #define SQL_NON_NULLABLE_COLUMNS 75
  522. #define SQL_DRIVER_HLIB 76
  523. #define SQL_DRIVER_ODBC_VER 77
  524. #define SQL_LOCK_TYPES 78
  525. #define SQL_POS_OPERATIONS 79
  526. #define SQL_POSITIONED_STATEMENTS 80
  527. #define SQL_BOOKMARK_PERSISTENCE 82
  528. #define SQL_STATIC_SENSITIVITY 83
  529. #define SQL_FILE_USAGE 84
  530. #define SQL_COLUMN_ALIAS 87
  531. #define SQL_GROUP_BY 88
  532. #define SQL_KEYWORDS 89
  533. #define SQL_OWNER_USAGE 91
  534. #define SQL_QUALIFIER_USAGE 92
  535. #define SQL_QUOTED_IDENTIFIER_CASE 93
  536. #define SQL_SUBQUERIES 95
  537. #define SQL_UNION 96
  538. #define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103
  539. #define SQL_MAX_CHAR_LITERAL_LEN 108
  540. #define SQL_TIMEDATE_ADD_INTERVALS 109
  541. #define SQL_TIMEDATE_DIFF_INTERVALS 110
  542. #define SQL_NEED_LONG_DATA_LEN 111
  543. #define SQL_MAX_BINARY_LITERAL_LEN 112
  544. #define SQL_LIKE_ESCAPE_CLAUSE 113
  545. #define SQL_QUALIFIER_LOCATION 114
  546. #if (ODBCVER >= 0x0201 && ODBCVER < 0x0300)
  547. #define SQL_OJ_CAPABILITIES 65003
  548. #endif
  549. #if (ODBCVER < 0x0300)
  550. #define SQL_INFO_LAST SQL_QUALIFIER_LOCATION
  551. #define SQL_INFO_DRIVER_START 1000
  552. #endif
  553. #if (ODBCVER >= 0x0300)
  554. #define SQL_ACTIVE_ENVIRONMENTS 116
  555. #define SQL_ALTER_DOMAIN 117
  556. #define SQL_SQL_CONFORMANCE 118
  557. #define SQL_DATETIME_LITERALS 119
  558. #define SQL_ASYNC_MODE 10021
  559. #define SQL_BATCH_ROW_COUNT 120
  560. #define SQL_BATCH_SUPPORT 121
  561. #define SQL_CATALOG_LOCATION SQL_QUALIFIER_LOCATION
  562. #define SQL_CATALOG_NAME_SEPARATOR SQL_QUALIFIER_NAME_SEPARATOR
  563. #define SQL_CATALOG_TERM SQL_QUALIFIER_TERM
  564. #define SQL_CATALOG_USAGE SQL_QUALIFIER_USAGE
  565. #define SQL_CONVERT_WCHAR 122
  566. #define SQL_CONVERT_INTERVAL_DAY_TIME 123
  567. #define SQL_CONVERT_INTERVAL_YEAR_MONTH 124
  568. #define SQL_CONVERT_WLONGVARCHAR 125
  569. #define SQL_CONVERT_WVARCHAR 126
  570. #define SQL_CREATE_ASSERTION 127
  571. #define SQL_CREATE_CHARACTER_SET 128
  572. #define SQL_CREATE_COLLATION 129
  573. #define SQL_CREATE_DOMAIN 130
  574. #define SQL_CREATE_SCHEMA 131
  575. #define SQL_CREATE_TABLE 132
  576. #define SQL_CREATE_TRANSLATION 133
  577. #define SQL_CREATE_VIEW 134
  578. #define SQL_DRIVER_HDESC 135
  579. #define SQL_DROP_ASSERTION 136
  580. #define SQL_DROP_CHARACTER_SET 137
  581. #define SQL_DROP_COLLATION 138
  582. #define SQL_DROP_DOMAIN 139
  583. #define SQL_DROP_SCHEMA 140
  584. #define SQL_DROP_TABLE 141
  585. #define SQL_DROP_TRANSLATION 142
  586. #define SQL_DROP_VIEW 143
  587. #define SQL_DYNAMIC_CURSOR_ATTRIBUTES1 144
  588. #define SQL_DYNAMIC_CURSOR_ATTRIBUTES2 145
  589. #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 146
  590. #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 147
  591. #define SQL_INDEX_KEYWORDS 148
  592. #define SQL_INFO_SCHEMA_VIEWS 149
  593. #define SQL_KEYSET_CURSOR_ATTRIBUTES1 150
  594. #define SQL_KEYSET_CURSOR_ATTRIBUTES2 151
  595. #define SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 10022
  596. #define SQL_ODBC_INTERFACE_CONFORMANCE 152
  597. #define SQL_PARAM_ARRAY_ROW_COUNTS 153
  598. #define SQL_PARAM_ARRAY_SELECTS 154
  599. #define SQL_SCHEMA_TERM SQL_OWNER_TERM
  600. #define SQL_SCHEMA_USAGE SQL_OWNER_USAGE
  601. #define SQL_SQL92_DATETIME_FUNCTIONS 155
  602. #define SQL_SQL92_FOREIGN_KEY_DELETE_RULE 156
  603. #define SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 157
  604. #define SQL_SQL92_GRANT 158
  605. #define SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 159
  606. #define SQL_SQL92_PREDICATES 160
  607. #define SQL_SQL92_RELATIONAL_JOIN_OPERATORS 161
  608. #define SQL_SQL92_REVOKE 162
  609. #define SQL_SQL92_ROW_VALUE_CONSTRUCTOR 163
  610. #define SQL_SQL92_STRING_FUNCTIONS 164
  611. #define SQL_SQL92_VALUE_EXPRESSIONS 165
  612. #define SQL_STANDARD_CLI_CONFORMANCE 166
  613. #define SQL_STATIC_CURSOR_ATTRIBUTES1 167
  614. #define SQL_STATIC_CURSOR_ATTRIBUTES2 168
  615. #define SQL_AGGREGATE_FUNCTIONS 169
  616. #define SQL_DDL_INDEX 170
  617. #define SQL_DM_VER 171
  618. #define SQL_INSERT_STATEMENT 172
  619. #define SQL_CONVERT_GUID 173
  620. #define SQL_UNION_STATEMENT SQL_UNION
  621. #endif
  622. #define SQL_DTC_TRANSITION_COST 1750
  623. #if (ODBCVER >= 0x0300)
  624. #define SQL_AT_ADD_COLUMN_SINGLE __MSABI_LONG(0x00000020)
  625. #define SQL_AT_ADD_COLUMN_DEFAULT __MSABI_LONG(0x00000040)
  626. #define SQL_AT_ADD_COLUMN_COLLATION __MSABI_LONG(0x00000080)
  627. #define SQL_AT_SET_COLUMN_DEFAULT __MSABI_LONG(0x00000100)
  628. #define SQL_AT_DROP_COLUMN_DEFAULT __MSABI_LONG(0x00000200)
  629. #define SQL_AT_DROP_COLUMN_CASCADE __MSABI_LONG(0x00000400)
  630. #define SQL_AT_DROP_COLUMN_RESTRICT __MSABI_LONG(0x00000800)
  631. #define SQL_AT_ADD_TABLE_CONSTRAINT __MSABI_LONG(0x00001000)
  632. #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE __MSABI_LONG(0x00002000)
  633. #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT __MSABI_LONG(0x00004000)
  634. #define SQL_AT_CONSTRAINT_NAME_DEFINITION __MSABI_LONG(0x00008000)
  635. #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED __MSABI_LONG(0x00010000)
  636. #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE __MSABI_LONG(0x00020000)
  637. #define SQL_AT_CONSTRAINT_DEFERRABLE __MSABI_LONG(0x00040000)
  638. #define SQL_AT_CONSTRAINT_NON_DEFERRABLE __MSABI_LONG(0x00080000)
  639. #endif
  640. #define SQL_CVT_CHAR __MSABI_LONG(0x00000001)
  641. #define SQL_CVT_NUMERIC __MSABI_LONG(0x00000002)
  642. #define SQL_CVT_DECIMAL __MSABI_LONG(0x00000004)
  643. #define SQL_CVT_INTEGER __MSABI_LONG(0x00000008)
  644. #define SQL_CVT_SMALLINT __MSABI_LONG(0x00000010)
  645. #define SQL_CVT_FLOAT __MSABI_LONG(0x00000020)
  646. #define SQL_CVT_REAL __MSABI_LONG(0x00000040)
  647. #define SQL_CVT_DOUBLE __MSABI_LONG(0x00000080)
  648. #define SQL_CVT_VARCHAR __MSABI_LONG(0x00000100)
  649. #define SQL_CVT_LONGVARCHAR __MSABI_LONG(0x00000200)
  650. #define SQL_CVT_BINARY __MSABI_LONG(0x00000400)
  651. #define SQL_CVT_VARBINARY __MSABI_LONG(0x00000800)
  652. #define SQL_CVT_BIT __MSABI_LONG(0x00001000)
  653. #define SQL_CVT_TINYINT __MSABI_LONG(0x00002000)
  654. #define SQL_CVT_BIGINT __MSABI_LONG(0x00004000)
  655. #define SQL_CVT_DATE __MSABI_LONG(0x00008000)
  656. #define SQL_CVT_TIME __MSABI_LONG(0x00010000)
  657. #define SQL_CVT_TIMESTAMP __MSABI_LONG(0x00020000)
  658. #define SQL_CVT_LONGVARBINARY __MSABI_LONG(0x00040000)
  659. #if (ODBCVER >= 0x0300)
  660. #define SQL_CVT_INTERVAL_YEAR_MONTH __MSABI_LONG(0x00080000)
  661. #define SQL_CVT_INTERVAL_DAY_TIME __MSABI_LONG(0x00100000)
  662. #define SQL_CVT_WCHAR __MSABI_LONG(0x00200000)
  663. #define SQL_CVT_WLONGVARCHAR __MSABI_LONG(0x00400000)
  664. #define SQL_CVT_WVARCHAR __MSABI_LONG(0x00800000)
  665. #define SQL_CVT_GUID __MSABI_LONG(0x01000000)
  666. #endif
  667. #define SQL_FN_CVT_CONVERT __MSABI_LONG(0x00000001)
  668. #if (ODBCVER >= 0x0300)
  669. #define SQL_FN_CVT_CAST __MSABI_LONG(0x00000002)
  670. #endif
  671. #define SQL_FN_STR_CONCAT __MSABI_LONG(0x00000001)
  672. #define SQL_FN_STR_INSERT __MSABI_LONG(0x00000002)
  673. #define SQL_FN_STR_LEFT __MSABI_LONG(0x00000004)
  674. #define SQL_FN_STR_LTRIM __MSABI_LONG(0x00000008)
  675. #define SQL_FN_STR_LENGTH __MSABI_LONG(0x00000010)
  676. #define SQL_FN_STR_LOCATE __MSABI_LONG(0x00000020)
  677. #define SQL_FN_STR_LCASE __MSABI_LONG(0x00000040)
  678. #define SQL_FN_STR_REPEAT __MSABI_LONG(0x00000080)
  679. #define SQL_FN_STR_REPLACE __MSABI_LONG(0x00000100)
  680. #define SQL_FN_STR_RIGHT __MSABI_LONG(0x00000200)
  681. #define SQL_FN_STR_RTRIM __MSABI_LONG(0x00000400)
  682. #define SQL_FN_STR_SUBSTRING __MSABI_LONG(0x00000800)
  683. #define SQL_FN_STR_UCASE __MSABI_LONG(0x00001000)
  684. #define SQL_FN_STR_ASCII __MSABI_LONG(0x00002000)
  685. #define SQL_FN_STR_CHAR __MSABI_LONG(0x00004000)
  686. #define SQL_FN_STR_DIFFERENCE __MSABI_LONG(0x00008000)
  687. #define SQL_FN_STR_LOCATE_2 __MSABI_LONG(0x00010000)
  688. #define SQL_FN_STR_SOUNDEX __MSABI_LONG(0x00020000)
  689. #define SQL_FN_STR_SPACE __MSABI_LONG(0x00040000)
  690. #if (ODBCVER >= 0x0300)
  691. #define SQL_FN_STR_BIT_LENGTH __MSABI_LONG(0x00080000)
  692. #define SQL_FN_STR_CHAR_LENGTH __MSABI_LONG(0x00100000)
  693. #define SQL_FN_STR_CHARACTER_LENGTH __MSABI_LONG(0x00200000)
  694. #define SQL_FN_STR_OCTET_LENGTH __MSABI_LONG(0x00400000)
  695. #define SQL_FN_STR_POSITION __MSABI_LONG(0x00800000)
  696. #endif
  697. #if (ODBCVER >= 0x0300)
  698. #define SQL_SSF_CONVERT __MSABI_LONG(0x00000001)
  699. #define SQL_SSF_LOWER __MSABI_LONG(0x00000002)
  700. #define SQL_SSF_UPPER __MSABI_LONG(0x00000004)
  701. #define SQL_SSF_SUBSTRING __MSABI_LONG(0x00000008)
  702. #define SQL_SSF_TRANSLATE __MSABI_LONG(0x00000010)
  703. #define SQL_SSF_TRIM_BOTH __MSABI_LONG(0x00000020)
  704. #define SQL_SSF_TRIM_LEADING __MSABI_LONG(0x00000040)
  705. #define SQL_SSF_TRIM_TRAILING __MSABI_LONG(0x00000080)
  706. #endif
  707. #define SQL_FN_NUM_ABS __MSABI_LONG(0x00000001)
  708. #define SQL_FN_NUM_ACOS __MSABI_LONG(0x00000002)
  709. #define SQL_FN_NUM_ASIN __MSABI_LONG(0x00000004)
  710. #define SQL_FN_NUM_ATAN __MSABI_LONG(0x00000008)
  711. #define SQL_FN_NUM_ATAN2 __MSABI_LONG(0x00000010)
  712. #define SQL_FN_NUM_CEILING __MSABI_LONG(0x00000020)
  713. #define SQL_FN_NUM_COS __MSABI_LONG(0x00000040)
  714. #define SQL_FN_NUM_COT __MSABI_LONG(0x00000080)
  715. #define SQL_FN_NUM_EXP __MSABI_LONG(0x00000100)
  716. #define SQL_FN_NUM_FLOOR __MSABI_LONG(0x00000200)
  717. #define SQL_FN_NUM_LOG __MSABI_LONG(0x00000400)
  718. #define SQL_FN_NUM_MOD __MSABI_LONG(0x00000800)
  719. #define SQL_FN_NUM_SIGN __MSABI_LONG(0x00001000)
  720. #define SQL_FN_NUM_SIN __MSABI_LONG(0x00002000)
  721. #define SQL_FN_NUM_SQRT __MSABI_LONG(0x00004000)
  722. #define SQL_FN_NUM_TAN __MSABI_LONG(0x00008000)
  723. #define SQL_FN_NUM_PI __MSABI_LONG(0x00010000)
  724. #define SQL_FN_NUM_RAND __MSABI_LONG(0x00020000)
  725. #define SQL_FN_NUM_DEGREES __MSABI_LONG(0x00040000)
  726. #define SQL_FN_NUM_LOG10 __MSABI_LONG(0x00080000)
  727. #define SQL_FN_NUM_POWER __MSABI_LONG(0x00100000)
  728. #define SQL_FN_NUM_RADIANS __MSABI_LONG(0x00200000)
  729. #define SQL_FN_NUM_ROUND __MSABI_LONG(0x00400000)
  730. #define SQL_FN_NUM_TRUNCATE __MSABI_LONG(0x00800000)
  731. #if (ODBCVER >= 0x0300)
  732. #define SQL_SNVF_BIT_LENGTH __MSABI_LONG(0x00000001)
  733. #define SQL_SNVF_CHAR_LENGTH __MSABI_LONG(0x00000002)
  734. #define SQL_SNVF_CHARACTER_LENGTH __MSABI_LONG(0x00000004)
  735. #define SQL_SNVF_EXTRACT __MSABI_LONG(0x00000008)
  736. #define SQL_SNVF_OCTET_LENGTH __MSABI_LONG(0x00000010)
  737. #define SQL_SNVF_POSITION __MSABI_LONG(0x00000020)
  738. #endif
  739. #define SQL_FN_TD_NOW __MSABI_LONG(0x00000001)
  740. #define SQL_FN_TD_CURDATE __MSABI_LONG(0x00000002)
  741. #define SQL_FN_TD_DAYOFMONTH __MSABI_LONG(0x00000004)
  742. #define SQL_FN_TD_DAYOFWEEK __MSABI_LONG(0x00000008)
  743. #define SQL_FN_TD_DAYOFYEAR __MSABI_LONG(0x00000010)
  744. #define SQL_FN_TD_MONTH __MSABI_LONG(0x00000020)
  745. #define SQL_FN_TD_QUARTER __MSABI_LONG(0x00000040)
  746. #define SQL_FN_TD_WEEK __MSABI_LONG(0x00000080)
  747. #define SQL_FN_TD_YEAR __MSABI_LONG(0x00000100)
  748. #define SQL_FN_TD_CURTIME __MSABI_LONG(0x00000200)
  749. #define SQL_FN_TD_HOUR __MSABI_LONG(0x00000400)
  750. #define SQL_FN_TD_MINUTE __MSABI_LONG(0x00000800)
  751. #define SQL_FN_TD_SECOND __MSABI_LONG(0x00001000)
  752. #define SQL_FN_TD_TIMESTAMPADD __MSABI_LONG(0x00002000)
  753. #define SQL_FN_TD_TIMESTAMPDIFF __MSABI_LONG(0x00004000)
  754. #define SQL_FN_TD_DAYNAME __MSABI_LONG(0x00008000)
  755. #define SQL_FN_TD_MONTHNAME __MSABI_LONG(0x00010000)
  756. #if (ODBCVER >= 0x0300)
  757. #define SQL_FN_TD_CURRENT_DATE __MSABI_LONG(0x00020000)
  758. #define SQL_FN_TD_CURRENT_TIME __MSABI_LONG(0x00040000)
  759. #define SQL_FN_TD_CURRENT_TIMESTAMP __MSABI_LONG(0x00080000)
  760. #define SQL_FN_TD_EXTRACT __MSABI_LONG(0x00100000)
  761. #endif
  762. #if (ODBCVER >= 0x0300)
  763. #define SQL_SDF_CURRENT_DATE __MSABI_LONG(0x00000001)
  764. #define SQL_SDF_CURRENT_TIME __MSABI_LONG(0x00000002)
  765. #define SQL_SDF_CURRENT_TIMESTAMP __MSABI_LONG(0x00000004)
  766. #endif
  767. #define SQL_FN_SYS_USERNAME __MSABI_LONG(0x00000001)
  768. #define SQL_FN_SYS_DBNAME __MSABI_LONG(0x00000002)
  769. #define SQL_FN_SYS_IFNULL __MSABI_LONG(0x00000004)
  770. #define SQL_FN_TSI_FRAC_SECOND __MSABI_LONG(0x00000001)
  771. #define SQL_FN_TSI_SECOND __MSABI_LONG(0x00000002)
  772. #define SQL_FN_TSI_MINUTE __MSABI_LONG(0x00000004)
  773. #define SQL_FN_TSI_HOUR __MSABI_LONG(0x00000008)
  774. #define SQL_FN_TSI_DAY __MSABI_LONG(0x00000010)
  775. #define SQL_FN_TSI_WEEK __MSABI_LONG(0x00000020)
  776. #define SQL_FN_TSI_MONTH __MSABI_LONG(0x00000040)
  777. #define SQL_FN_TSI_QUARTER __MSABI_LONG(0x00000080)
  778. #define SQL_FN_TSI_YEAR __MSABI_LONG(0x00000100)
  779. #if (ODBCVER >= 0x0300)
  780. #define SQL_CA1_NEXT __MSABI_LONG(0x00000001)
  781. #define SQL_CA1_ABSOLUTE __MSABI_LONG(0x00000002)
  782. #define SQL_CA1_RELATIVE __MSABI_LONG(0x00000004)
  783. #define SQL_CA1_BOOKMARK __MSABI_LONG(0x00000008)
  784. #define SQL_CA1_LOCK_NO_CHANGE __MSABI_LONG(0x00000040)
  785. #define SQL_CA1_LOCK_EXCLUSIVE __MSABI_LONG(0x00000080)
  786. #define SQL_CA1_LOCK_UNLOCK __MSABI_LONG(0x00000100)
  787. #define SQL_CA1_POS_POSITION __MSABI_LONG(0x00000200)
  788. #define SQL_CA1_POS_UPDATE __MSABI_LONG(0x00000400)
  789. #define SQL_CA1_POS_DELETE __MSABI_LONG(0x00000800)
  790. #define SQL_CA1_POS_REFRESH __MSABI_LONG(0x00001000)
  791. #define SQL_CA1_POSITIONED_UPDATE __MSABI_LONG(0x00002000)
  792. #define SQL_CA1_POSITIONED_DELETE __MSABI_LONG(0x00004000)
  793. #define SQL_CA1_SELECT_FOR_UPDATE __MSABI_LONG(0x00008000)
  794. #define SQL_CA1_BULK_ADD __MSABI_LONG(0x00010000)
  795. #define SQL_CA1_BULK_UPDATE_BY_BOOKMARK __MSABI_LONG(0x00020000)
  796. #define SQL_CA1_BULK_DELETE_BY_BOOKMARK __MSABI_LONG(0x00040000)
  797. #define SQL_CA1_BULK_FETCH_BY_BOOKMARK __MSABI_LONG(0x00080000)
  798. #endif
  799. #if (ODBCVER >= 0x0300)
  800. #define SQL_CA2_READ_ONLY_CONCURRENCY __MSABI_LONG(0x00000001)
  801. #define SQL_CA2_LOCK_CONCURRENCY __MSABI_LONG(0x00000002)
  802. #define SQL_CA2_OPT_ROWVER_CONCURRENCY __MSABI_LONG(0x00000004)
  803. #define SQL_CA2_OPT_VALUES_CONCURRENCY __MSABI_LONG(0x00000008)
  804. #define SQL_CA2_SENSITIVITY_ADDITIONS __MSABI_LONG(0x00000010)
  805. #define SQL_CA2_SENSITIVITY_DELETIONS __MSABI_LONG(0x00000020)
  806. #define SQL_CA2_SENSITIVITY_UPDATES __MSABI_LONG(0x00000040)
  807. #define SQL_CA2_MAX_ROWS_SELECT __MSABI_LONG(0x00000080)
  808. #define SQL_CA2_MAX_ROWS_INSERT __MSABI_LONG(0x00000100)
  809. #define SQL_CA2_MAX_ROWS_DELETE __MSABI_LONG(0x00000200)
  810. #define SQL_CA2_MAX_ROWS_UPDATE __MSABI_LONG(0x00000400)
  811. #define SQL_CA2_MAX_ROWS_CATALOG __MSABI_LONG(0x00000800)
  812. #define SQL_CA2_MAX_ROWS_AFFECTS_ALL (SQL_CA2_MAX_ROWS_SELECT | SQL_CA2_MAX_ROWS_INSERT | SQL_CA2_MAX_ROWS_DELETE | SQL_CA2_MAX_ROWS_UPDATE | SQL_CA2_MAX_ROWS_CATALOG)
  813. #define SQL_CA2_CRC_EXACT __MSABI_LONG(0x00001000)
  814. #define SQL_CA2_CRC_APPROXIMATE __MSABI_LONG(0x00002000)
  815. #define SQL_CA2_SIMULATE_NON_UNIQUE __MSABI_LONG(0x00004000)
  816. #define SQL_CA2_SIMULATE_TRY_UNIQUE __MSABI_LONG(0x00008000)
  817. #define SQL_CA2_SIMULATE_UNIQUE __MSABI_LONG(0x00010000)
  818. #endif
  819. #define SQL_OAC_NONE 0x0000
  820. #define SQL_OAC_LEVEL1 0x0001
  821. #define SQL_OAC_LEVEL2 0x0002
  822. #define SQL_OSCC_NOT_COMPLIANT 0x0000
  823. #define SQL_OSCC_COMPLIANT 0x0001
  824. #define SQL_OSC_MINIMUM 0x0000
  825. #define SQL_OSC_CORE 0x0001
  826. #define SQL_OSC_EXTENDED 0x0002
  827. #define SQL_CB_NULL 0x0000
  828. #define SQL_CB_NON_NULL 0x0001
  829. #define SQL_SO_FORWARD_ONLY __MSABI_LONG(0x00000001)
  830. #define SQL_SO_KEYSET_DRIVEN __MSABI_LONG(0x00000002)
  831. #define SQL_SO_DYNAMIC __MSABI_LONG(0x00000004)
  832. #define SQL_SO_MIXED __MSABI_LONG(0x00000008)
  833. #define SQL_SO_STATIC __MSABI_LONG(0x00000010)
  834. #define SQL_FD_FETCH_BOOKMARK __MSABI_LONG(0x00000080)
  835. #define SQL_CN_NONE 0x0000
  836. #define SQL_CN_DIFFERENT 0x0001
  837. #define SQL_CN_ANY 0x0002
  838. #define SQL_NNC_NULL 0x0000
  839. #define SQL_NNC_NON_NULL 0x0001
  840. #define SQL_NC_START 0x0002
  841. #define SQL_NC_END 0x0004
  842. #define SQL_FILE_NOT_SUPPORTED 0x0000
  843. #define SQL_FILE_TABLE 0x0001
  844. #define SQL_FILE_QUALIFIER 0x0002
  845. #define SQL_FILE_CATALOG SQL_FILE_QUALIFIER
  846. #define SQL_GD_BLOCK __MSABI_LONG(0x00000004)
  847. #define SQL_GD_BOUND __MSABI_LONG(0x00000008)
  848. #define SQL_PS_POSITIONED_DELETE __MSABI_LONG(0x00000001)
  849. #define SQL_PS_POSITIONED_UPDATE __MSABI_LONG(0x00000002)
  850. #define SQL_PS_SELECT_FOR_UPDATE __MSABI_LONG(0x00000004)
  851. #define SQL_GB_NOT_SUPPORTED 0x0000
  852. #define SQL_GB_GROUP_BY_EQUALS_SELECT 0x0001
  853. #define SQL_GB_GROUP_BY_CONTAINS_SELECT 0x0002
  854. #define SQL_GB_NO_RELATION 0x0003
  855. #if (ODBCVER >= 0x0300)
  856. #define SQL_GB_COLLATE 0x0004
  857. #endif
  858. #define SQL_OU_DML_STATEMENTS __MSABI_LONG(0x00000001)
  859. #define SQL_OU_PROCEDURE_INVOCATION __MSABI_LONG(0x00000002)
  860. #define SQL_OU_TABLE_DEFINITION __MSABI_LONG(0x00000004)
  861. #define SQL_OU_INDEX_DEFINITION __MSABI_LONG(0x00000008)
  862. #define SQL_OU_PRIVILEGE_DEFINITION __MSABI_LONG(0x00000010)
  863. #if (ODBCVER >= 0x0300)
  864. #define SQL_SU_DML_STATEMENTS SQL_OU_DML_STATEMENTS
  865. #define SQL_SU_PROCEDURE_INVOCATION SQL_OU_PROCEDURE_INVOCATION
  866. #define SQL_SU_TABLE_DEFINITION SQL_OU_TABLE_DEFINITION
  867. #define SQL_SU_INDEX_DEFINITION SQL_OU_INDEX_DEFINITION
  868. #define SQL_SU_PRIVILEGE_DEFINITION SQL_OU_PRIVILEGE_DEFINITION
  869. #endif
  870. #define SQL_QU_DML_STATEMENTS __MSABI_LONG(0x00000001)
  871. #define SQL_QU_PROCEDURE_INVOCATION __MSABI_LONG(0x00000002)
  872. #define SQL_QU_TABLE_DEFINITION __MSABI_LONG(0x00000004)
  873. #define SQL_QU_INDEX_DEFINITION __MSABI_LONG(0x00000008)
  874. #define SQL_QU_PRIVILEGE_DEFINITION __MSABI_LONG(0x00000010)
  875. #if (ODBCVER >= 0x0300)
  876. #define SQL_CU_DML_STATEMENTS SQL_QU_DML_STATEMENTS
  877. #define SQL_CU_PROCEDURE_INVOCATION SQL_QU_PROCEDURE_INVOCATION
  878. #define SQL_CU_TABLE_DEFINITION SQL_QU_TABLE_DEFINITION
  879. #define SQL_CU_INDEX_DEFINITION SQL_QU_INDEX_DEFINITION
  880. #define SQL_CU_PRIVILEGE_DEFINITION SQL_QU_PRIVILEGE_DEFINITION
  881. #endif
  882. #define SQL_SQ_COMPARISON __MSABI_LONG(0x00000001)
  883. #define SQL_SQ_EXISTS __MSABI_LONG(0x00000002)
  884. #define SQL_SQ_IN __MSABI_LONG(0x00000004)
  885. #define SQL_SQ_QUANTIFIED __MSABI_LONG(0x00000008)
  886. #define SQL_SQ_CORRELATED_SUBQUERIES __MSABI_LONG(0x00000010)
  887. #define SQL_U_UNION __MSABI_LONG(0x00000001)
  888. #define SQL_U_UNION_ALL __MSABI_LONG(0x00000002)
  889. #define SQL_BP_CLOSE __MSABI_LONG(0x00000001)
  890. #define SQL_BP_DELETE __MSABI_LONG(0x00000002)
  891. #define SQL_BP_DROP __MSABI_LONG(0x00000004)
  892. #define SQL_BP_TRANSACTION __MSABI_LONG(0x00000008)
  893. #define SQL_BP_UPDATE __MSABI_LONG(0x00000010)
  894. #define SQL_BP_OTHER_HSTMT __MSABI_LONG(0x00000020)
  895. #define SQL_BP_SCROLL __MSABI_LONG(0x00000040)
  896. #define SQL_SS_ADDITIONS __MSABI_LONG(0x00000001)
  897. #define SQL_SS_DELETIONS __MSABI_LONG(0x00000002)
  898. #define SQL_SS_UPDATES __MSABI_LONG(0x00000004)
  899. #define SQL_CV_CREATE_VIEW __MSABI_LONG(0x00000001)
  900. #define SQL_CV_CHECK_OPTION __MSABI_LONG(0x00000002)
  901. #define SQL_CV_CASCADED __MSABI_LONG(0x00000004)
  902. #define SQL_CV_LOCAL __MSABI_LONG(0x00000008)
  903. #define SQL_LCK_NO_CHANGE __MSABI_LONG(0x00000001)
  904. #define SQL_LCK_EXCLUSIVE __MSABI_LONG(0x00000002)
  905. #define SQL_LCK_UNLOCK __MSABI_LONG(0x00000004)
  906. #define SQL_POS_POSITION __MSABI_LONG(0x00000001)
  907. #define SQL_POS_REFRESH __MSABI_LONG(0x00000002)
  908. #define SQL_POS_UPDATE __MSABI_LONG(0x00000004)
  909. #define SQL_POS_DELETE __MSABI_LONG(0x00000008)
  910. #define SQL_POS_ADD __MSABI_LONG(0x00000010)
  911. #define SQL_QL_START 0x0001
  912. #define SQL_QL_END 0x0002
  913. #if (ODBCVER >= 0x0300)
  914. #define SQL_AF_AVG __MSABI_LONG(0x00000001)
  915. #define SQL_AF_COUNT __MSABI_LONG(0x00000002)
  916. #define SQL_AF_MAX __MSABI_LONG(0x00000004)
  917. #define SQL_AF_MIN __MSABI_LONG(0x00000008)
  918. #define SQL_AF_SUM __MSABI_LONG(0x00000010)
  919. #define SQL_AF_DISTINCT __MSABI_LONG(0x00000020)
  920. #define SQL_AF_ALL __MSABI_LONG(0x00000040)
  921. #define SQL_SC_SQL92_ENTRY __MSABI_LONG(0x00000001)
  922. #define SQL_SC_FIPS127_2_TRANSITIONAL __MSABI_LONG(0x00000002)
  923. #define SQL_SC_SQL92_INTERMEDIATE __MSABI_LONG(0x00000004)
  924. #define SQL_SC_SQL92_FULL __MSABI_LONG(0x00000008)
  925. #define SQL_DL_SQL92_DATE __MSABI_LONG(0x00000001)
  926. #define SQL_DL_SQL92_TIME __MSABI_LONG(0x00000002)
  927. #define SQL_DL_SQL92_TIMESTAMP __MSABI_LONG(0x00000004)
  928. #define SQL_DL_SQL92_INTERVAL_YEAR __MSABI_LONG(0x00000008)
  929. #define SQL_DL_SQL92_INTERVAL_MONTH __MSABI_LONG(0x00000010)
  930. #define SQL_DL_SQL92_INTERVAL_DAY __MSABI_LONG(0x00000020)
  931. #define SQL_DL_SQL92_INTERVAL_HOUR __MSABI_LONG(0x00000040)
  932. #define SQL_DL_SQL92_INTERVAL_MINUTE __MSABI_LONG(0x00000080)
  933. #define SQL_DL_SQL92_INTERVAL_SECOND __MSABI_LONG(0x00000100)
  934. #define SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH __MSABI_LONG(0x00000200)
  935. #define SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR __MSABI_LONG(0x00000400)
  936. #define SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE __MSABI_LONG(0x00000800)
  937. #define SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND __MSABI_LONG(0x00001000)
  938. #define SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE __MSABI_LONG(0x00002000)
  939. #define SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND __MSABI_LONG(0x00004000)
  940. #define SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND __MSABI_LONG(0x00008000)
  941. #define SQL_CL_START SQL_QL_START
  942. #define SQL_CL_END SQL_QL_END
  943. #define SQL_BRC_PROCEDURES 0x0000001
  944. #define SQL_BRC_EXPLICIT 0x0000002
  945. #define SQL_BRC_ROLLED_UP 0x0000004
  946. #define SQL_BS_SELECT_EXPLICIT __MSABI_LONG(0x00000001)
  947. #define SQL_BS_ROW_COUNT_EXPLICIT __MSABI_LONG(0x00000002)
  948. #define SQL_BS_SELECT_PROC __MSABI_LONG(0x00000004)
  949. #define SQL_BS_ROW_COUNT_PROC __MSABI_LONG(0x00000008)
  950. #define SQL_PARC_BATCH 1
  951. #define SQL_PARC_NO_BATCH 2
  952. #define SQL_PAS_BATCH 1
  953. #define SQL_PAS_NO_BATCH 2
  954. #define SQL_PAS_NO_SELECT 3
  955. #define SQL_IK_NONE __MSABI_LONG(0x00000000)
  956. #define SQL_IK_ASC __MSABI_LONG(0x00000001)
  957. #define SQL_IK_DESC __MSABI_LONG(0x00000002)
  958. #define SQL_IK_ALL (SQL_IK_ASC | SQL_IK_DESC)
  959. #define SQL_ISV_ASSERTIONS __MSABI_LONG(0x00000001)
  960. #define SQL_ISV_CHARACTER_SETS __MSABI_LONG(0x00000002)
  961. #define SQL_ISV_CHECK_CONSTRAINTS __MSABI_LONG(0x00000004)
  962. #define SQL_ISV_COLLATIONS __MSABI_LONG(0x00000008)
  963. #define SQL_ISV_COLUMN_DOMAIN_USAGE __MSABI_LONG(0x00000010)
  964. #define SQL_ISV_COLUMN_PRIVILEGES __MSABI_LONG(0x00000020)
  965. #define SQL_ISV_COLUMNS __MSABI_LONG(0x00000040)
  966. #define SQL_ISV_CONSTRAINT_COLUMN_USAGE __MSABI_LONG(0x00000080)
  967. #define SQL_ISV_CONSTRAINT_TABLE_USAGE __MSABI_LONG(0x00000100)
  968. #define SQL_ISV_DOMAIN_CONSTRAINTS __MSABI_LONG(0x00000200)
  969. #define SQL_ISV_DOMAINS __MSABI_LONG(0x00000400)
  970. #define SQL_ISV_KEY_COLUMN_USAGE __MSABI_LONG(0x00000800)
  971. #define SQL_ISV_REFERENTIAL_CONSTRAINTS __MSABI_LONG(0x00001000)
  972. #define SQL_ISV_SCHEMATA __MSABI_LONG(0x00002000)
  973. #define SQL_ISV_SQL_LANGUAGES __MSABI_LONG(0x00004000)
  974. #define SQL_ISV_TABLE_CONSTRAINTS __MSABI_LONG(0x00008000)
  975. #define SQL_ISV_TABLE_PRIVILEGES __MSABI_LONG(0x00010000)
  976. #define SQL_ISV_TABLES __MSABI_LONG(0x00020000)
  977. #define SQL_ISV_TRANSLATIONS __MSABI_LONG(0x00040000)
  978. #define SQL_ISV_USAGE_PRIVILEGES __MSABI_LONG(0x00080000)
  979. #define SQL_ISV_VIEW_COLUMN_USAGE __MSABI_LONG(0x00100000)
  980. #define SQL_ISV_VIEW_TABLE_USAGE __MSABI_LONG(0x00200000)
  981. #define SQL_ISV_VIEWS __MSABI_LONG(0x00400000)
  982. #define SQL_AM_NONE 0
  983. #define SQL_AM_CONNECTION 1
  984. #define SQL_AM_STATEMENT 2
  985. #define SQL_AD_CONSTRAINT_NAME_DEFINITION __MSABI_LONG(0x00000001)
  986. #define SQL_AD_ADD_DOMAIN_CONSTRAINT __MSABI_LONG(0x00000002)
  987. #define SQL_AD_DROP_DOMAIN_CONSTRAINT __MSABI_LONG(0x00000004)
  988. #define SQL_AD_ADD_DOMAIN_DEFAULT __MSABI_LONG(0x00000008)
  989. #define SQL_AD_DROP_DOMAIN_DEFAULT __MSABI_LONG(0x00000010)
  990. #define SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED __MSABI_LONG(0x00000020)
  991. #define SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE __MSABI_LONG(0x00000040)
  992. #define SQL_AD_ADD_CONSTRAINT_DEFERRABLE __MSABI_LONG(0x00000080)
  993. #define SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE __MSABI_LONG(0x00000100)
  994. #define SQL_CS_CREATE_SCHEMA __MSABI_LONG(0x00000001)
  995. #define SQL_CS_AUTHORIZATION __MSABI_LONG(0x00000002)
  996. #define SQL_CS_DEFAULT_CHARACTER_SET __MSABI_LONG(0x00000004)
  997. #define SQL_CTR_CREATE_TRANSLATION __MSABI_LONG(0x00000001)
  998. #define SQL_CA_CREATE_ASSERTION __MSABI_LONG(0x00000001)
  999. #define SQL_CA_CONSTRAINT_INITIALLY_DEFERRED __MSABI_LONG(0x00000010)
  1000. #define SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE __MSABI_LONG(0x00000020)
  1001. #define SQL_CA_CONSTRAINT_DEFERRABLE __MSABI_LONG(0x00000040)
  1002. #define SQL_CA_CONSTRAINT_NON_DEFERRABLE __MSABI_LONG(0x00000080)
  1003. #define SQL_CCS_CREATE_CHARACTER_SET __MSABI_LONG(0x00000001)
  1004. #define SQL_CCS_COLLATE_CLAUSE __MSABI_LONG(0x00000002)
  1005. #define SQL_CCS_LIMITED_COLLATION __MSABI_LONG(0x00000004)
  1006. #define SQL_CCOL_CREATE_COLLATION __MSABI_LONG(0x00000001)
  1007. #define SQL_CDO_CREATE_DOMAIN __MSABI_LONG(0x00000001)
  1008. #define SQL_CDO_DEFAULT __MSABI_LONG(0x00000002)
  1009. #define SQL_CDO_CONSTRAINT __MSABI_LONG(0x00000004)
  1010. #define SQL_CDO_COLLATION __MSABI_LONG(0x00000008)
  1011. #define SQL_CDO_CONSTRAINT_NAME_DEFINITION __MSABI_LONG(0x00000010)
  1012. #define SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED __MSABI_LONG(0x00000020)
  1013. #define SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE __MSABI_LONG(0x00000040)
  1014. #define SQL_CDO_CONSTRAINT_DEFERRABLE __MSABI_LONG(0x00000080)
  1015. #define SQL_CDO_CONSTRAINT_NON_DEFERRABLE __MSABI_LONG(0x00000100)
  1016. #define SQL_CT_CREATE_TABLE __MSABI_LONG(0x00000001)
  1017. #define SQL_CT_COMMIT_PRESERVE __MSABI_LONG(0x00000002)
  1018. #define SQL_CT_COMMIT_DELETE __MSABI_LONG(0x00000004)
  1019. #define SQL_CT_GLOBAL_TEMPORARY __MSABI_LONG(0x00000008)
  1020. #define SQL_CT_LOCAL_TEMPORARY __MSABI_LONG(0x00000010)
  1021. #define SQL_CT_CONSTRAINT_INITIALLY_DEFERRED __MSABI_LONG(0x00000020)
  1022. #define SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE __MSABI_LONG(0x00000040)
  1023. #define SQL_CT_CONSTRAINT_DEFERRABLE __MSABI_LONG(0x00000080)
  1024. #define SQL_CT_CONSTRAINT_NON_DEFERRABLE __MSABI_LONG(0x00000100)
  1025. #define SQL_CT_COLUMN_CONSTRAINT __MSABI_LONG(0x00000200)
  1026. #define SQL_CT_COLUMN_DEFAULT __MSABI_LONG(0x00000400)
  1027. #define SQL_CT_COLUMN_COLLATION __MSABI_LONG(0x00000800)
  1028. #define SQL_CT_TABLE_CONSTRAINT __MSABI_LONG(0x00001000)
  1029. #define SQL_CT_CONSTRAINT_NAME_DEFINITION __MSABI_LONG(0x00002000)
  1030. #define SQL_DI_CREATE_INDEX __MSABI_LONG(0x00000001)
  1031. #define SQL_DI_DROP_INDEX __MSABI_LONG(0x00000002)
  1032. #define SQL_DC_DROP_COLLATION __MSABI_LONG(0x00000001)
  1033. #define SQL_DD_DROP_DOMAIN __MSABI_LONG(0x00000001)
  1034. #define SQL_DD_RESTRICT __MSABI_LONG(0x00000002)
  1035. #define SQL_DD_CASCADE __MSABI_LONG(0x00000004)
  1036. #define SQL_DS_DROP_SCHEMA __MSABI_LONG(0x00000001)
  1037. #define SQL_DS_RESTRICT __MSABI_LONG(0x00000002)
  1038. #define SQL_DS_CASCADE __MSABI_LONG(0x00000004)
  1039. #define SQL_DCS_DROP_CHARACTER_SET __MSABI_LONG(0x00000001)
  1040. #define SQL_DA_DROP_ASSERTION __MSABI_LONG(0x00000001)
  1041. #define SQL_DT_DROP_TABLE __MSABI_LONG(0x00000001)
  1042. #define SQL_DT_RESTRICT __MSABI_LONG(0x00000002)
  1043. #define SQL_DT_CASCADE __MSABI_LONG(0x00000004)
  1044. #define SQL_DTR_DROP_TRANSLATION __MSABI_LONG(0x00000001)
  1045. #define SQL_DV_DROP_VIEW __MSABI_LONG(0x00000001)
  1046. #define SQL_DV_RESTRICT __MSABI_LONG(0x00000002)
  1047. #define SQL_DV_CASCADE __MSABI_LONG(0x00000004)
  1048. #define SQL_IS_INSERT_LITERALS __MSABI_LONG(0x00000001)
  1049. #define SQL_IS_INSERT_SEARCHED __MSABI_LONG(0x00000002)
  1050. #define SQL_IS_SELECT_INTO __MSABI_LONG(0x00000004)
  1051. #define SQL_OIC_CORE __MSABI_LONG(1U)
  1052. #define SQL_OIC_LEVEL1 __MSABI_LONG(2U)
  1053. #define SQL_OIC_LEVEL2 __MSABI_LONG(3U)
  1054. #define SQL_SFKD_CASCADE __MSABI_LONG(0x00000001)
  1055. #define SQL_SFKD_NO_ACTION __MSABI_LONG(0x00000002)
  1056. #define SQL_SFKD_SET_DEFAULT __MSABI_LONG(0x00000004)
  1057. #define SQL_SFKD_SET_NULL __MSABI_LONG(0x00000008)
  1058. #define SQL_SFKU_CASCADE __MSABI_LONG(0x00000001)
  1059. #define SQL_SFKU_NO_ACTION __MSABI_LONG(0x00000002)
  1060. #define SQL_SFKU_SET_DEFAULT __MSABI_LONG(0x00000004)
  1061. #define SQL_SFKU_SET_NULL __MSABI_LONG(0x00000008)
  1062. #define SQL_SG_USAGE_ON_DOMAIN __MSABI_LONG(0x00000001)
  1063. #define SQL_SG_USAGE_ON_CHARACTER_SET __MSABI_LONG(0x00000002)
  1064. #define SQL_SG_USAGE_ON_COLLATION __MSABI_LONG(0x00000004)
  1065. #define SQL_SG_USAGE_ON_TRANSLATION __MSABI_LONG(0x00000008)
  1066. #define SQL_SG_WITH_GRANT_OPTION __MSABI_LONG(0x00000010)
  1067. #define SQL_SG_DELETE_TABLE __MSABI_LONG(0x00000020)
  1068. #define SQL_SG_INSERT_TABLE __MSABI_LONG(0x00000040)
  1069. #define SQL_SG_INSERT_COLUMN __MSABI_LONG(0x00000080)
  1070. #define SQL_SG_REFERENCES_TABLE __MSABI_LONG(0x00000100)
  1071. #define SQL_SG_REFERENCES_COLUMN __MSABI_LONG(0x00000200)
  1072. #define SQL_SG_SELECT_TABLE __MSABI_LONG(0x00000400)
  1073. #define SQL_SG_UPDATE_TABLE __MSABI_LONG(0x00000800)
  1074. #define SQL_SG_UPDATE_COLUMN __MSABI_LONG(0x00001000)
  1075. #define SQL_SP_EXISTS __MSABI_LONG(0x00000001)
  1076. #define SQL_SP_ISNOTNULL __MSABI_LONG(0x00000002)
  1077. #define SQL_SP_ISNULL __MSABI_LONG(0x00000004)
  1078. #define SQL_SP_MATCH_FULL __MSABI_LONG(0x00000008)
  1079. #define SQL_SP_MATCH_PARTIAL __MSABI_LONG(0x00000010)
  1080. #define SQL_SP_MATCH_UNIQUE_FULL __MSABI_LONG(0x00000020)
  1081. #define SQL_SP_MATCH_UNIQUE_PARTIAL __MSABI_LONG(0x00000040)
  1082. #define SQL_SP_OVERLAPS __MSABI_LONG(0x00000080)
  1083. #define SQL_SP_UNIQUE __MSABI_LONG(0x00000100)
  1084. #define SQL_SP_LIKE __MSABI_LONG(0x00000200)
  1085. #define SQL_SP_IN __MSABI_LONG(0x00000400)
  1086. #define SQL_SP_BETWEEN __MSABI_LONG(0x00000800)
  1087. #define SQL_SP_COMPARISON __MSABI_LONG(0x00001000)
  1088. #define SQL_SP_QUANTIFIED_COMPARISON __MSABI_LONG(0x00002000)
  1089. #define SQL_SRJO_CORRESPONDING_CLAUSE __MSABI_LONG(0x00000001)
  1090. #define SQL_SRJO_CROSS_JOIN __MSABI_LONG(0x00000002)
  1091. #define SQL_SRJO_EXCEPT_JOIN __MSABI_LONG(0x00000004)
  1092. #define SQL_SRJO_FULL_OUTER_JOIN __MSABI_LONG(0x00000008)
  1093. #define SQL_SRJO_INNER_JOIN __MSABI_LONG(0x00000010)
  1094. #define SQL_SRJO_INTERSECT_JOIN __MSABI_LONG(0x00000020)
  1095. #define SQL_SRJO_LEFT_OUTER_JOIN __MSABI_LONG(0x00000040)
  1096. #define SQL_SRJO_NATURAL_JOIN __MSABI_LONG(0x00000080)
  1097. #define SQL_SRJO_RIGHT_OUTER_JOIN __MSABI_LONG(0x00000100)
  1098. #define SQL_SRJO_UNION_JOIN __MSABI_LONG(0x00000200)
  1099. #define SQL_SR_USAGE_ON_DOMAIN __MSABI_LONG(0x00000001)
  1100. #define SQL_SR_USAGE_ON_CHARACTER_SET __MSABI_LONG(0x00000002)
  1101. #define SQL_SR_USAGE_ON_COLLATION __MSABI_LONG(0x00000004)
  1102. #define SQL_SR_USAGE_ON_TRANSLATION __MSABI_LONG(0x00000008)
  1103. #define SQL_SR_GRANT_OPTION_FOR __MSABI_LONG(0x00000010)
  1104. #define SQL_SR_CASCADE __MSABI_LONG(0x00000020)
  1105. #define SQL_SR_RESTRICT __MSABI_LONG(0x00000040)
  1106. #define SQL_SR_DELETE_TABLE __MSABI_LONG(0x00000080)
  1107. #define SQL_SR_INSERT_TABLE __MSABI_LONG(0x00000100)
  1108. #define SQL_SR_INSERT_COLUMN __MSABI_LONG(0x00000200)
  1109. #define SQL_SR_REFERENCES_TABLE __MSABI_LONG(0x00000400)
  1110. #define SQL_SR_REFERENCES_COLUMN __MSABI_LONG(0x00000800)
  1111. #define SQL_SR_SELECT_TABLE __MSABI_LONG(0x00001000)
  1112. #define SQL_SR_UPDATE_TABLE __MSABI_LONG(0x00002000)
  1113. #define SQL_SR_UPDATE_COLUMN __MSABI_LONG(0x00004000)
  1114. #define SQL_SRVC_VALUE_EXPRESSION __MSABI_LONG(0x00000001)
  1115. #define SQL_SRVC_NULL __MSABI_LONG(0x00000002)
  1116. #define SQL_SRVC_DEFAULT __MSABI_LONG(0x00000004)
  1117. #define SQL_SRVC_ROW_SUBQUERY __MSABI_LONG(0x00000008)
  1118. #define SQL_SVE_CASE __MSABI_LONG(0x00000001)
  1119. #define SQL_SVE_CAST __MSABI_LONG(0x00000002)
  1120. #define SQL_SVE_COALESCE __MSABI_LONG(0x00000004)
  1121. #define SQL_SVE_NULLIF __MSABI_LONG(0x00000008)
  1122. #define SQL_SCC_XOPEN_CLI_VERSION1 __MSABI_LONG(0x00000001)
  1123. #define SQL_SCC_ISO92_CLI __MSABI_LONG(0x00000002)
  1124. #define SQL_US_UNION SQL_U_UNION
  1125. #define SQL_US_UNION_ALL SQL_U_UNION_ALL
  1126. #endif
  1127. #define SQL_DTC_ENLIST_EXPENSIVE __MSABI_LONG(0x00000001)
  1128. #define SQL_DTC_UNENLIST_EXPENSIVE __MSABI_LONG(0x00000002)
  1129. #if (ODBCVER >= 0x0300)
  1130. #define SQL_FETCH_FIRST_USER 31
  1131. #define SQL_FETCH_FIRST_SYSTEM 32
  1132. #endif
  1133. #define SQL_ENTIRE_ROWSET 0
  1134. #define SQL_POSITION 0
  1135. #define SQL_REFRESH 1
  1136. #define SQL_UPDATE 2
  1137. #define SQL_DELETE 3
  1138. #define SQL_ADD 4
  1139. #define SQL_SETPOS_MAX_OPTION_VALUE SQL_ADD
  1140. #if (ODBCVER >= 0x0300)
  1141. #define SQL_UPDATE_BY_BOOKMARK 5
  1142. #define SQL_DELETE_BY_BOOKMARK 6
  1143. #define SQL_FETCH_BY_BOOKMARK 7
  1144. #endif
  1145. #define SQL_LOCK_NO_CHANGE 0
  1146. #define SQL_LOCK_EXCLUSIVE 1
  1147. #define SQL_LOCK_UNLOCK 2
  1148. #define SQL_SETPOS_MAX_LOCK_VALUE SQL_LOCK_UNLOCK
  1149. #define SQL_POSITION_TO(hstmt,irow) SQLSetPos(hstmt,irow,SQL_POSITION,SQL_LOCK_NO_CHANGE)
  1150. #define SQL_LOCK_RECORD(hstmt,irow,fLock) SQLSetPos(hstmt,irow,SQL_POSITION,fLock)
  1151. #define SQL_REFRESH_RECORD(hstmt,irow,fLock) SQLSetPos(hstmt,irow,SQL_REFRESH,fLock)
  1152. #define SQL_UPDATE_RECORD(hstmt,irow) SQLSetPos(hstmt,irow,SQL_UPDATE,SQL_LOCK_NO_CHANGE)
  1153. #define SQL_DELETE_RECORD(hstmt,irow) SQLSetPos(hstmt,irow,SQL_DELETE,SQL_LOCK_NO_CHANGE)
  1154. #define SQL_ADD_RECORD(hstmt,irow) SQLSetPos(hstmt,irow,SQL_ADD,SQL_LOCK_NO_CHANGE)
  1155. #define SQL_BEST_ROWID 1
  1156. #define SQL_ROWVER 2
  1157. #define SQL_PC_NOT_PSEUDO 1
  1158. #define SQL_QUICK 0
  1159. #define SQL_ENSURE 1
  1160. #define SQL_TABLE_STAT 0
  1161. #if (ODBCVER >= 0x0300)
  1162. #define SQL_ALL_CATALOGS "%"
  1163. #define SQL_ALL_SCHEMAS "%"
  1164. #define SQL_ALL_TABLE_TYPES "%"
  1165. #endif
  1166. #define SQL_DRIVER_NOPROMPT 0
  1167. #define SQL_DRIVER_COMPLETE 1
  1168. #define SQL_DRIVER_PROMPT 2
  1169. #define SQL_DRIVER_COMPLETE_REQUIRED 3
  1170. #ifndef RC_INVOKED
  1171. SQLRETURN SQL_API SQLDriverConnect(SQLHDBC hdbc,SQLHWND hwnd,SQLCHAR *szConnStrIn,SQLSMALLINT cbConnStrIn,SQLCHAR *szConnStrOut,SQLSMALLINT cbConnStrOutMax,SQLSMALLINT *pcbConnStrOut,SQLUSMALLINT fDriverCompletion);
  1172. #endif
  1173. #define SQL_FETCH_BOOKMARK 8
  1174. #define SQL_ROW_SUCCESS 0
  1175. #define SQL_ROW_DELETED 1
  1176. #define SQL_ROW_UPDATED 2
  1177. #define SQL_ROW_NOROW 3
  1178. #define SQL_ROW_ADDED 4
  1179. #define SQL_ROW_ERROR 5
  1180. #if (ODBCVER >= 0x0300)
  1181. #define SQL_ROW_SUCCESS_WITH_INFO 6
  1182. #define SQL_ROW_PROCEED 0
  1183. #define SQL_ROW_IGNORE 1
  1184. #endif
  1185. #if (ODBCVER >= 0x0300)
  1186. #define SQL_PARAM_SUCCESS 0
  1187. #define SQL_PARAM_SUCCESS_WITH_INFO 6
  1188. #define SQL_PARAM_ERROR 5
  1189. #define SQL_PARAM_UNUSED 7
  1190. #define SQL_PARAM_DIAG_UNAVAILABLE 1
  1191. #define SQL_PARAM_PROCEED 0
  1192. #define SQL_PARAM_IGNORE 1
  1193. #endif
  1194. #define SQL_CASCADE 0
  1195. #define SQL_RESTRICT 1
  1196. #define SQL_SET_NULL 2
  1197. #if (ODBCVER >= 0x0250)
  1198. #define SQL_NO_ACTION 3
  1199. #define SQL_SET_DEFAULT 4
  1200. #endif
  1201. #if (ODBCVER >= 0x0300)
  1202. #define SQL_INITIALLY_DEFERRED 5
  1203. #define SQL_INITIALLY_IMMEDIATE 6
  1204. #define SQL_NOT_DEFERRABLE 7
  1205. #endif
  1206. #define SQL_PARAM_TYPE_UNKNOWN 0
  1207. #define SQL_PARAM_INPUT 1
  1208. #define SQL_PARAM_INPUT_OUTPUT 2
  1209. #define SQL_RESULT_COL 3
  1210. #define SQL_PARAM_OUTPUT 4
  1211. #define SQL_RETURN_VALUE 5
  1212. #define SQL_PT_UNKNOWN 0
  1213. #define SQL_PT_PROCEDURE 1
  1214. #define SQL_PT_FUNCTION 2
  1215. #ifndef RC_INVOKED
  1216. #define SQL_ODBC_KEYWORDS "ABSOLUTE,ACTION,ADA,ADD,ALL,ALLOCATE,ALTER,AND,ANY,ARE,AS,""ASC,ASSERTION,AT,AUTHORIZATION,AVG,""BEGIN,BETWEEN,BIT,BIT_LENGTH,BOTH,BY,CASCADE,CASCADED,CASE,CAST,CATALOG,""CHAR,CHAR_LENGTH,CHARACTER,CHARACTER_LENGTH,CHECK,CLOSE,COALESCE,""COLLATE,COLLATION,COLUMN,COMMIT,CONNECT,CONNECTION,CONSTRAINT,""CONSTRAINTS,CONTINUE,CONVERT,CORRESPONDING,COUNT,CREATE,CROSS,CURRENT,""CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,CURSOR,""DATE,DAY,DEALLOCATE,DEC,DECIMAL,DECLARE,DEFAULT,DEFERRABLE,""DEFERRED,DELETE,DESC,DESCRIBE,DESCRIPTOR,DIAGNOSTICS,DISCONNECT,""DISTINCT,DOMAIN,DOUBLE,DROP,""ELSE,END,END-EXEC,ESCAPE,EXCEPT,EXCEPTION,EXEC,EXECUTE,""EXISTS,EXTERNAL,EXTRACT,""FALSE,FETCH,FIRST,FLOAT,FOR,FOREIGN,FORTRAN,FOUND,FROM,FULL,""GET,GLOBAL,GO,GOTO,GRANT,GROUP,HAVING,HOUR,""IDENTITY,IMMEDIATE,IN,INCLUDE,INDEX,INDICATOR,INITIALLY,INNER,""INPUT,INSENSITIVE,INSERT,INT,INTEGER,INTERSECT,INTERVAL,INTO,IS,ISOLATION,""JOIN,KEY,LANGUAGE,LAST,LEADING,LEFT,LEVEL,LIKE,LOCAL,LOWER,""MATCH,MAX,MIN,MINUTE,MODULE,MONTH,""NAMES,NATIONAL,NATURAL,NCHAR,NEXT,NO,NONE,NOT,NULL,NULLIF,NUMERIC,""OCTET_LENGTH,OF,ON,ONLY,OPEN,OPTION,OR,ORDER,OUTER,OUTPUT,OVERLAPS,""PAD,PARTIAL,PASCAL,PLI,POSITION,PRECISION,PREPARE,PRESERVE,""PRIMARY,PRIOR,PRIVILEGES,PROCEDURE,PUBLIC,""READ,REAL,REFERENCES,RELATIVE,RESTRICT,REVOKE,RIGHT,ROLLBACK,ROWS""SCHEMA,SCROLL,SECOND,SECTION,SELECT,SESSION,SESSION_USER,SET,SIZE,""SMALLINT,SOME,SPACE,SQL,SQLCA,SQLCODE,SQLERROR,SQLSTATE,SQLWARNING,""SUBSTRING,SUM,SYSTEM_USER,""TABLE,TEMPORARY,THEN,TIME,TIMESTAMP,TIMEZONE_HOUR,TIMEZONE_MINUTE,""TO,TRAILING,TRANSACTION,TRANSLATE,TRANSLATION,TRIM,TRUE,""UNION,UNIQUE,UNKNOWN,UPDATE,UPPER,USAGE,USER,USING,""VALUE,VALUES,VARCHAR,VARYING,VIEW,WHEN,WHENEVER,WHERE,WITH,WORK,WRITE,""YEAR,ZONE"
  1217. SQLRETURN SQL_API SQLBrowseConnect(SQLHDBC hdbc,SQLCHAR *szConnStrIn,SQLSMALLINT cbConnStrIn,SQLCHAR *szConnStrOut,SQLSMALLINT cbConnStrOutMax,SQLSMALLINT *pcbConnStrOut);
  1218. #if (ODBCVER >= 0x0300)
  1219. SQLRETURN SQL_API SQLBulkOperations(SQLHSTMT StatementHandle,SQLSMALLINT Operation);
  1220. #endif
  1221. SQLRETURN SQL_API SQLColAttributes(SQLHSTMT hstmt,SQLUSMALLINT icol,SQLUSMALLINT fDescType,SQLPOINTER rgbDesc,SQLSMALLINT cbDescMax,SQLSMALLINT *pcbDesc,SQLLEN *pfDesc);
  1222. SQLRETURN SQL_API SQLColumnPrivileges(SQLHSTMT hstmt,SQLCHAR *szCatalogName,SQLSMALLINT cbCatalogName,SQLCHAR *szSchemaName,SQLSMALLINT cbSchemaName,SQLCHAR *szTableName,SQLSMALLINT cbTableName,SQLCHAR *szColumnName,SQLSMALLINT cbColumnName);
  1223. SQLRETURN SQL_API SQLDescribeParam(SQLHSTMT hstmt,SQLUSMALLINT ipar,SQLSMALLINT *pfSqlType,SQLULEN *pcbParamDef,SQLSMALLINT *pibScale,SQLSMALLINT *pfNullable);
  1224. SQLRETURN SQL_API SQLExtendedFetch(SQLHSTMT hstmt,SQLUSMALLINT fFetchType,SQLLEN irow,SQLULEN *pcrow,SQLUSMALLINT *rgfRowStatus);
  1225. SQLRETURN SQL_API SQLForeignKeys(SQLHSTMT hstmt,SQLCHAR *szPkCatalogName,SQLSMALLINT cbPkCatalogName,SQLCHAR *szPkSchemaName,SQLSMALLINT cbPkSchemaName,SQLCHAR *szPkTableName,SQLSMALLINT cbPkTableName,SQLCHAR *szFkCatalogName,SQLSMALLINT cbFkCatalogName,SQLCHAR *szFkSchemaName,SQLSMALLINT cbFkSchemaName,SQLCHAR *szFkTableName,SQLSMALLINT cbFkTableName);
  1226. SQLRETURN SQL_API SQLMoreResults(SQLHSTMT hstmt);
  1227. SQLRETURN SQL_API SQLNativeSql(SQLHDBC hdbc,SQLCHAR *szSqlStrIn,SQLINTEGER cbSqlStrIn,SQLCHAR *szSqlStr,SQLINTEGER cbSqlStrMax,SQLINTEGER *pcbSqlStr);
  1228. SQLRETURN SQL_API SQLNumParams(SQLHSTMT hstmt,SQLSMALLINT *pcpar);
  1229. SQLRETURN SQL_API SQLParamOptions(SQLHSTMT hstmt,SQLULEN crow,SQLULEN *pirow);
  1230. SQLRETURN SQL_API SQLPrimaryKeys(SQLHSTMT hstmt,SQLCHAR *szCatalogName,SQLSMALLINT cbCatalogName,SQLCHAR *szSchemaName,SQLSMALLINT cbSchemaName,SQLCHAR *szTableName,SQLSMALLINT cbTableName);
  1231. SQLRETURN SQL_API SQLProcedureColumns(SQLHSTMT hstmt,SQLCHAR *szCatalogName,SQLSMALLINT cbCatalogName,SQLCHAR *szSchemaName,SQLSMALLINT cbSchemaName,SQLCHAR *szProcName,SQLSMALLINT cbProcName,SQLCHAR *szColumnName,SQLSMALLINT cbColumnName);
  1232. SQLRETURN SQL_API SQLProcedures(SQLHSTMT hstmt,SQLCHAR *szCatalogName,SQLSMALLINT cbCatalogName,SQLCHAR *szSchemaName,SQLSMALLINT cbSchemaName,SQLCHAR *szProcName,SQLSMALLINT cbProcName);
  1233. SQLRETURN SQL_API SQLSetPos(SQLHSTMT hstmt,SQLSETPOSIROW irow,SQLUSMALLINT fOption,SQLUSMALLINT fLock);
  1234. SQLRETURN SQL_API SQLTablePrivileges(SQLHSTMT hstmt,SQLCHAR *szCatalogName,SQLSMALLINT cbCatalogName,SQLCHAR *szSchemaName,SQLSMALLINT cbSchemaName,SQLCHAR *szTableName,SQLSMALLINT cbTableName);
  1235. SQLRETURN SQL_API SQLDrivers(SQLHENV henv,SQLUSMALLINT fDirection,SQLCHAR *szDriverDesc,SQLSMALLINT cbDriverDescMax,SQLSMALLINT *pcbDriverDesc,SQLCHAR *szDriverAttributes,SQLSMALLINT cbDrvrAttrMax,SQLSMALLINT *pcbDrvrAttr);
  1236. SQLRETURN SQL_API SQLBindParameter(SQLHSTMT hstmt,SQLUSMALLINT ipar,SQLSMALLINT fParamType,SQLSMALLINT fCType,SQLSMALLINT fSqlType,SQLULEN cbColDef,SQLSMALLINT ibScale,SQLPOINTER rgbValue,SQLLEN cbValueMax,SQLLEN *pcbValue);
  1237. #endif
  1238. #ifdef ODBC_STD
  1239. #define SQLAllocHandle SQLAllocHandleStd
  1240. #define SQLAllocEnv(phenv) SQLAllocHandleStd(SQL_HANDLE_ENV,SQL_NULL_HANDLE,phenv)
  1241. #define SQL_YEAR SQL_CODE_YEAR
  1242. #define SQL_MONTH SQL_CODE_MONTH
  1243. #define SQL_DAY SQL_CODE_DAY
  1244. #define SQL_HOUR SQL_CODE_HOUR
  1245. #define SQL_MINUTE SQL_CODE_MINUTE
  1246. #define SQL_SECOND SQL_CODE_SECOND
  1247. #define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH
  1248. #define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR
  1249. #define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE
  1250. #define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND
  1251. #define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE
  1252. #define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND
  1253. #define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND
  1254. #endif
  1255. #if (ODBCVER >= 0x0300)
  1256. #ifndef RC_INVOKED
  1257. SQLRETURN SQL_API SQLAllocHandleStd(SQLSMALLINT fHandleType,SQLHANDLE hInput,SQLHANDLE *phOutput);
  1258. #endif
  1259. #endif
  1260. #define SQL_DATABASE_NAME 16
  1261. #define SQL_FD_FETCH_PREV SQL_FD_FETCH_PRIOR
  1262. #define SQL_FETCH_PREV SQL_FETCH_PRIOR
  1263. #define SQL_CONCUR_TIMESTAMP SQL_CONCUR_ROWVER
  1264. #define SQL_SCCO_OPT_TIMESTAMP SQL_SCCO_OPT_ROWVER
  1265. #define SQL_CC_DELETE SQL_CB_DELETE
  1266. #define SQL_CR_DELETE SQL_CB_DELETE
  1267. #define SQL_CC_CLOSE SQL_CB_CLOSE
  1268. #define SQL_CR_CLOSE SQL_CB_CLOSE
  1269. #define SQL_CC_PRESERVE SQL_CB_PRESERVE
  1270. #define SQL_CR_PRESERVE SQL_CB_PRESERVE
  1271. #define SQL_SCROLL_FORWARD_ONLY __MSABI_LONG(0)
  1272. #define SQL_SCROLL_KEYSET_DRIVEN (__MSABI_LONG(-1))
  1273. #define SQL_SCROLL_DYNAMIC (__MSABI_LONG(-2))
  1274. #define SQL_SCROLL_STATIC (__MSABI_LONG(-3))
  1275. #ifndef RC_INVOKED
  1276. SQLRETURN SQL_API SQLSetScrollOptions(SQLHSTMT hstmt,SQLUSMALLINT fConcurrency,SQLLEN crowKeyset,SQLUSMALLINT crowRowset);
  1277. #define TRACE_VERSION 1000
  1278. RETCODE SQL_API TraceOpenLogFile(LPWSTR,LPWSTR,DWORD);
  1279. RETCODE SQL_API TraceCloseLogFile();
  1280. VOID SQL_API TraceReturn(RETCODE,RETCODE);
  1281. DWORD SQL_API TraceVersion();
  1282. #define TRACE_ON __MSABI_LONG(0x00000001)
  1283. #define TRACE_VS_EVENT_ON __MSABI_LONG(0x00000002)
  1284. RETCODE SQL_API TraceVSControl(DWORD);
  1285. WINBOOL SQL_API ODBCSetTryWaitValue(DWORD dwValue);
  1286. DWORD SQL_API ODBCGetTryWaitValue();
  1287. #define ODBC_VS_FLAG_UNICODE_ARG __MSABI_LONG(0x00000001)
  1288. #define ODBC_VS_FLAG_UNICODE_COR __MSABI_LONG(0x00000002)
  1289. #define ODBC_VS_FLAG_RETCODE __MSABI_LONG(0x00000004)
  1290. #define ODBC_VS_FLAG_STOP __MSABI_LONG(0x00000008)
  1291. typedef struct tagODBC_VS_ARGS {
  1292. const GUID *pguidEvent;
  1293. DWORD dwFlags;
  1294. __C89_NAMELESS union {
  1295. WCHAR *wszArg;
  1296. CHAR *szArg;
  1297. };
  1298. __C89_NAMELESS union {
  1299. WCHAR *wszCorrelation;
  1300. CHAR *szCorrelation;
  1301. };
  1302. RETCODE RetCode;
  1303. } ODBC_VS_ARGS,*PODBC_VS_ARGS;
  1304. VOID SQL_API FireVSDebugEvent(PODBC_VS_ARGS);
  1305. #endif
  1306. #ifdef __cplusplus
  1307. }
  1308. #endif
  1309. #include "sqlucode.h"
  1310. #endif