winapi_ui_automation/um/
sql.rs

1// Licensed under the Apache License, Version 2.0
2// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4// All files in the project carrying such notice may not be copied, modified, or distributed
5// except according to those terms.
6use um::sqltypes::{
7    SQLHANDLE, SQLHDBC, SQLHENV, SQLHSTMT, SQLINTEGER, SQLLEN, SQLPOINTER, SQLRETURN, SQLSMALLINT,
8    SQLUSMALLINT,
9};
10pub const SQL_NULL_DATA: SQLLEN = -1;
11pub const SQL_DATA_AT_EXEC: SQLLEN = -2;
12pub const SQL_SUCCESS: SQLRETURN = 0;
13pub const SQL_SUCCESS_WITH_INFO: SQLRETURN = 1;
14pub const SQL_NO_DATA: SQLRETURN = 100;
15pub const SQL_PARAM_DATA_AVAILABLE: SQLRETURN = 101;
16pub const SQL_ERROR: SQLRETURN = -1;
17pub const SQL_INVALID_HANDLE: SQLRETURN = -2;
18pub const SQL_STILL_EXECUTING: SQLRETURN = 2;
19pub const SQL_NEED_DATA: SQLRETURN = 99;
20pub const SQL_NTS: SQLSMALLINT = -3;
21pub const SQL_MAX_MESSAGE_LENGTH: usize = 512;
22pub const SQL_DATE_LEN: usize = 10;
23pub const SQL_TIME_LEN: usize = 8;
24pub const SQL_TIMESTAMP_LEN: usize = 19;
25pub const SQL_HANDLE_ENV: SQLSMALLINT = 1;
26pub const SQL_HANDLE_DBC: SQLSMALLINT = 2;
27pub const SQL_HANDLE_STMT: SQLSMALLINT = 3;
28pub const SQL_HANDLE_DESC: SQLSMALLINT = 4;
29pub const SQL_ATTR_OUTPUT_NTS: SQLINTEGER = 10001;
30pub const SQL_ATTR_AUTO_IPD: SQLINTEGER = 10001;
31pub const SQL_ATTR_METADATA_ID: SQLINTEGER = 10014;
32pub const SQL_ATTR_APP_ROW_DESC: SQLINTEGER = 10010;
33pub const SQL_ATTR_APP_PARAM_DESC: SQLINTEGER = 10011;
34pub const SQL_ATTR_IMP_ROW_DESC: SQLINTEGER = 10012;
35pub const SQL_ATTR_IMP_PARAM_DESC: SQLINTEGER = 10013;
36pub const SQL_ATTR_CURSOR_SCROLLABLE: SQLINTEGER = -1;
37pub const SQL_ATTR_CURSOR_SENSITIVITY: SQLINTEGER = -2;
38pub const SQL_UNKNOWN_TYPE: SQLSMALLINT = 0;
39pub const SQL_CHAR: SQLSMALLINT = 1;
40pub const SQL_NUMERIC: SQLSMALLINT = 2;
41pub const SQL_DECIMAL: SQLSMALLINT = 3;
42pub const SQL_INTEGER: SQLSMALLINT = 4;
43pub const SQL_SMALLINT: SQLSMALLINT = 5;
44pub const SQL_FLOAT: SQLSMALLINT = 6;
45pub const SQL_REAL: SQLSMALLINT = 7;
46pub const SQL_DOUBLE: SQLSMALLINT = 8;
47pub const SQL_DATETIME: SQLSMALLINT = 9;
48pub const SQL_VARCHAR: SQLSMALLINT = 12;
49pub const SQL_TYPE_DATE: SQLSMALLINT = 91;
50pub const SQL_TYPE_TIME: SQLSMALLINT = 92;
51pub const SQL_TYPE_TIMESTAMP: SQLSMALLINT = 93;
52pub const SQL_NO_NULLS: SQLSMALLINT = 0;
53pub const SQL_NULLABLE: SQLSMALLINT = 1;
54pub const SQL_NULLABLE_UNKNOWN: SQLSMALLINT = 2;
55pub const SQL_CLOSE: SQLUSMALLINT = 0;
56pub const SQL_DROP: SQLUSMALLINT = 1;
57pub const SQL_UNBIND: SQLUSMALLINT = 2;
58pub const SQL_RESET_PARAMS: SQLUSMALLINT = 3;
59pub const SQL_NULL_HANDLE: SQLHANDLE = 0 as SQLHANDLE;
60extern "system" {
61    pub fn SQLAllocHandle(
62        handleType: SQLSMALLINT,
63        inputHandle: SQLHANDLE,
64        outputHandle: *mut SQLHANDLE,
65    ) -> SQLRETURN;
66    pub fn SQLDisconnect(
67        connectionHandle: SQLHDBC,
68    ) -> SQLRETURN;
69    pub fn SQLFetch(
70        statementHandle: SQLHSTMT,
71    ) -> SQLRETURN;
72    pub fn SQLFreeHandle(
73        handleType: SQLSMALLINT,
74        handle: SQLHANDLE,
75    ) -> SQLRETURN;
76    pub fn SQLFreeStmt(
77        statementHandle: SQLHSTMT,
78        option: SQLUSMALLINT,
79    ) -> SQLRETURN;
80    pub fn SQLGetData(
81        statementHandle: SQLHSTMT,
82        columnNumber: SQLUSMALLINT,
83        targetType: SQLSMALLINT,
84        targetValue: SQLPOINTER,
85        bufferLength: SQLLEN,
86        strLen_or_IndPtr: *mut SQLLEN,
87    ) -> SQLRETURN;
88    pub fn SQLNumResultCols(
89        statementHandle: SQLHSTMT,
90        columnCount: *mut SQLSMALLINT,
91    ) -> SQLRETURN;
92    pub fn SQLRowCount(
93        statementHandle: SQLHSTMT,
94        rowCount: *mut SQLLEN,
95    ) -> SQLRETURN;
96    pub fn SQLSetConnectAttr(
97        connectionHandle: SQLHDBC,
98        attribute: SQLINTEGER,
99        value: SQLPOINTER,
100        stringLength: SQLINTEGER,
101    ) -> SQLRETURN;
102    pub fn SQLSetEnvAttr(
103        environmentHandle: SQLHENV,
104        attribute: SQLINTEGER,
105        value: SQLPOINTER,
106        stringLength: SQLINTEGER,
107    ) -> SQLRETURN;
108}