Skip to content

Commit

Permalink
[AD-1071] Support DirectQuery in Power BI Connector (#147)
Browse files Browse the repository at this point in the history
* [AD-1040] Initial improvement of Power BI connector settings.

* Commit Code Coverage Badge

* [AD-1040] Temporary work-around to generate the artifacts on pull request.

* Commit Code Coverage Badge

* [AD-1040] Updated connector configuration. SQL_MAX_CONCURRENT_ACTIVITIES = 1.

* [AD-1040] Correct test.

* Commit Code Coverage Badge

* [AD-1040] Correct spelling and test to use DSN instead of individual properties.

* Commit Code Coverage Badge

* [AD-1040] Remove unused connection string settings.

* [AD-1040] Attempt fix of commit Commit Coverage Badge on Mac.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of commit Commit Coverage Badge on Mac - #2.

* [AD-1040] Attempt fix of commit Commit Coverage Badge on Windows.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of TruffleHog on Windows.

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of TruffleHog on Windows - #2.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of TruffleHog on Windows - #3.

* [AD-1040] Attempt fix of TruffleHog on Windows - #4.

* [AD-1040] Attempt fix of TruffleHog on Windows - #5.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Clean-up TruffleHog changes.

* Commit Code Coverage Badge

* [AD-1040] Documented TODO: items to investigate to improve the SQLGetInfo properties accuracy.

* Commit Code Coverage Badge

* [AD-1040] Improved support of DirectQuery. Can now handle numbers. But still no support for Timestamp.

* [AD-1040] Fix unit tests. Improve readability of connector file.

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of pinning mongo-cxx-driver to version specific version.

* [AD-1040] Attempt fix of pinning mongo-cxx-driver to version specific version - #2.

* [AD-1040] Attempt fix of pinning mongo-cxx-driver to version specific version - #3.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Attempt fix of pinning mongo-cxx-driver to version specific version - #4.

* Commit Code Coverage Badge

* Adding Documentation and renaming functions

* fix dsn parameter

* Commit Code Coverage Badge

* [AD-1040] Attempt to expand capabilities to solve problem of folding error.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Some small changes and clean-up of interim comments.

* Commit Code Coverage Badge

* fixing scrolling and filtering

* Commit Code Coverage Badge

* [AD-1040] Resolve DirectQuery issues for scroll and filter.

* [AD-1040] Fixed tests.

* Commit Code Coverage Badge

* [AD-1040] Attempt to fix Mac build.

* [AD-1040] Attempt to fix Mac build - #2.

* Commit Code Coverage Badge

* [AD-1040] Attempt to fix Mac build - #3.

* Commit Code Coverage Badge

* [AD-1040] Attempt to fix Mac build - #4.

* [AD-1040] Attempt to fix Mac build - #5.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Comment for fix of libiodbc brew package.

* [AD-1040] Resolve DirectQuery issues for scroll and filter.

* [AD-1040] Fixed tests.

* [AD-1040] Attempt to fix Mac build.

* [AD-1040] Attempt to fix Mac build - #2.

* [AD-1040] Attempt to fix Mac build - #3.

* [AD-1040] Attempt to fix Mac build - #4.

* [AD-1040] Attempt to fix Mac build - #5.

* [AD-1040] Comment for fix of libiodbc brew package.

* Commit Code Coverage Badge

* [AD-1040] Recover missing merge material

* [AD-1040] Recover missing merge material - #2

* [AD-1040] Revert unintentional merge content.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Changes from code review comment.

* Commit Code Coverage Badge

* Commit Code Coverage Badge

* [AD-1040] Changes from code review comments.

* Commit Code Coverage Badge

Co-authored-by: birschick-bq <[email protected]>
Co-authored-by: Affonso Vieira <[email protected]>
Co-authored-by: affonsoBQ <[email protected]>
  • Loading branch information
4 people authored Jan 21, 2023
1 parent e7fccd5 commit 0c28b96
Show file tree
Hide file tree
Showing 9 changed files with 362 additions and 446 deletions.
15 changes: 5 additions & 10 deletions .github/workflows/mac-debug-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,11 +159,9 @@ jobs:
runs-on: ubuntu-latest
needs: build-mac-debug
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0

ref: ''

- name: Retrieve coverage
uses: actions/download-artifact@v2
Expand All @@ -185,18 +183,15 @@ jobs:
COVERAGE_BADGE="${COVERAGE_BADGE/'Code%20Coverage'/'macOS%20Code%20Coverage'}"
curl $COVERAGE_BADGE > .github/badges/coverage_badge_macOS.svg
- name: Update Repository Before Commit Badge
run: |
git pull
- name: Commit Coverage Badge
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_options: '--allow-empty --no-verify'
commit_message: Commit Code Coverage Badge
file_pattern: '*.svg'
skip_fetch: true
skip_dirty_check: true
skip_fetch: false
skip_checkout: false
skip_dirty_check: false

- name: Code Coverage Summary Report
uses: irongut/[email protected]
Expand Down
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ CTestTestfile.cmake
/sdk-build64/
/cmake-build32/
/cmake-build64/
/src/PowerBIConnector/DatabaseConnector/bin/Debug/
/src/PowerBIConnector/DatabaseConnector/obj/
/src/PowerBIConnector/DatabaseConnector/.vs/
/src/power-bi-connector/AmazonDocumentDBConnector/bin/Debug/
/src/power-bi-connector/AmazonDocumentDBConnector/obj/
/src/power-bi-connector/AmazonDocumentDBConnector/.vs/
src/aws-sdk-cpp/
default.profraw
test_output.html
Expand Down
28 changes: 14 additions & 14 deletions src/markdown/support/odbc-support-and-limitations.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,14 @@
| SQL_DATA_SOURCE_READ_ONLY | 'Y' | no |
| SQL_DATABASE_NAME | '\<database\>' | no |
| SQL_DESCRIBE_PARAMETER | 'N' | no |
| SQL_EXPRESSIONS_IN_ORDERBY | 'Y' | no |
| SQL_EXPRESSIONS_IN_ORDERBY | 'N' | no |
| SQL_INTEGRITY | 'N' | no |
| SQL_KEYWORDS | 'ABS,ALLOW,ARRAY,ARRAY_MAX_CARDINALITY,ASYMMETRIC,ATOMIC,BEGIN_FRAME,BEGIN_PARTITION,BIGINT,BINARY,BLOB,BOOLEAN,CALL,CALLED,CARDINALITY,CEIL,CEILING,CHAR_LENGTH,CLASSIFIER,CLOB,COLLECT,CONDITION,CORR,COVAR_POP,COVAR_SAMP,CUBE,CUME_DIST,CURRENT_CATALOG,CURRENT_DEFAULT_TRANSFORM_GROUP,CURRENT_PATH,CURRENT_ROLE,CURRENT_ROW,CURRENT_SCHEMA,CURRENT_TRANSFORM_GROUP_FOR_TYPE,CYCLE,DENSE_RANK,DEREF,DETERMINISTIC,DISALLOW,DYNAMIC,EACH,ELEMENT,EMPTY,END_FRAME,END_PARTITION,EQUALS,EVERY,EXP,EXPLAIN,EXTEND,FILTER,FIRST_VALUE,FLOOR,FRAME_ROW,FREE,FUNCTION,FUSION,GROUPING,GROUPS,HOLD,IMPORT,INITIAL,INOUT,INTERSECTION,JSON_ARRAY,JSON_ARRAYAGG,JSON_EXISTS,JSON_OBJECT,JSON_OBJECTAGG,JSON_QUERY,JSON_VALUE,LAG,LARGE,LAST_VALUE,LATERAL,LEAD,LIKE_REGEX,LIMIT,LN,LOCALTIME,LOCALTIMESTAMP,MATCHES,MATCH_NUMBER,MATCH_RECOGNIZE,MEASURES,MEMBER,MERGE,METHOD,MINUS,MOD,MODIFIES,MULTISET,NCLOB,NEW,NORMALIZE,NTH_VALUE,NTILE,OCCURRENCES_REGEX,OFFSET,OLD,OMIT,ONE,OUT,OVER,OVERLAY,PARAMETER,PARTITION,PATTERN,PER,PERCENT,PERCENTILE_CONT,PERCENTILE_DISC,PERCENT_RANK,PERIOD,PERMUTE,PORTION,POSITION_REGEX,POWER,PRECEDES,PREV,RANGE,RANK,READS,RECURSIVE,REF,REFERENCING,REGR_AVGX,REGR_AVGY,REGR_COUNT,REGR_INTERCEPT,REGR_R2,REGR_SLOPE,REGR_SXX,REGR_SXY,REGR_SYY,RELEASE,RESET,RESULT,RETURN,RETURNS,ROLLUP,ROW,ROW_NUMBER,RUNNING,SAVEPOINT,SCOPE,SEARCH,SEEK,SENSITIVE,SHOW,SIMILAR,SKIP,SPECIFIC,SPECIFICTYPE,SQLEXCEPTION,SQRT,START,STATIC,STDDEV_POP,STDDEV_SAMP,STREAM,SUBMULTISET,SUBSET,SUBSTRING_REGEX,SUCCEEDS,SYMMETRIC,SYSTEM,SYSTEM_TIME,TABLESAMPLE,TINYINT,TRANSLATE_REGEX,TREAT,TRIGGER,TRIM_ARRAY,TRUNCATE,UESCAPE,UNNEST,UPSERT,VALUE_OF,VARBINARY,VAR_POP,VAR_SAMP,VERSIONING,WIDTH_BUCKET,WINDOW,WITHIN,WITHOUT' | no |
| SQL_LIKE_ESCAPE_CLAUSE | 'N' | no |
| SQL_LIKE_ESCAPE_CLAUSE | 'Y' | no |
| SQL_MAX_ROW_SIZE_INCLUDES_LONG | 'Y' | no |
| SQL_MULT_RESULT_SETS | 'N' | no |
| SQL_MULTIPLE_ACTIVE_TXN | 'Y' | no |
| SQL_ORDER_BY_COLUMNS_IN_SELECT | 'N' | no |
| SQL_MULTIPLE_ACTIVE_TXN | 'N' | no |
| SQL_ORDER_BY_COLUMNS_IN_SELECT | 'Y' | no |
| SQL_PROCEDURE_TERM | 'stored procedure' | no |
| SQL_PROCEDURES | 'N' | no |
| SQL_ROW_UPDATES | 'N' | no |
Expand All @@ -48,8 +48,8 @@
| SQL_CATALOG_LOCATION | 0 (not supported) | no |
| SQL_QUALIFIER_LOCATION | 0 (not supported) | no |
| SQL_GETDATA_EXTENSIONS|SQL_GD_ANY_COLUMN, SQL_GD_ANY_ORDER, SQL_GD_BOUND | no |
| SQL_ODBC_INTERFACE_CONFORMANCE | SQL_OIC_CORE | no |
| SQL_SQL_CONFORMANCE | SQL_SC_SQL92_ENTRY | no |
| SQL_ODBC_INTERFACE_CONFORMANCE | SQL_OIC_LEVEL1 | no |
| SQL_SQL_CONFORMANCE | SQL_SC_SQL92_FULL | no |
| SQL_CATALOG_USAGE | 0 (not supported) | no |
| SQL_QUALIFIER_USAGE | 0 (not supported) | no |
| SQL_SCHEMA_USAGE | SQL_SU_DML_STATEMENTS, SQL_SU_TABLE_DEFINITION, SQL_SU_PRIVILEGE_DEFINITION, SQL_SU_INDEX_DEFINITION | no |
Expand All @@ -61,7 +61,7 @@
| SQL_TIMEDATE_DIFF_INTERVALS|SQL_FN_TSI_FRAC_SECOND, SQL_FN_TSI_SECOND, SQL_FN_TSI_MINUTE, SQL_FN_TSI_HOUR, SQL_FN_TSI_DAY, SQL_FN_TSI_WEEK, SQL_FN_TSI_MONTH, SQL_FN_TSI_QUARTER, SQL_FN_TSI_YEAR | no |
| SQL_DATETIME_LITERALS|SQL_DL_SQL92_DATE, SQL_DL_SQL92_TIME, SQL_DL_SQL92_TIMESTAMP | no |
| SQL_SYSTEM_FUNCTIONS|SQL_FN_SYS_USERNAME, SQL_FN_SYS_DBNAME, SQL_FN_SYS_IFNULL | no |
| SQL_CONVERT_FUNCTIONS | SQL_FN_CVT_CONVERT, SQL_FN_CVT_CAST | no |
| SQL_CONVERT_FUNCTIONS | SQL_FN_CVT_CAST | no |
| SQL_OJ_CAPABILITIES|SQL_OJ_LEFT, SQL_OJ_NOT_ORDERED, SQL_OJ_ALL_COMPARISON_OPS | no |
| SQL_POS_OPERATIONS | 0 (not supported) | no |
| SQL_SQL92_NUMERIC_VALUE_FUNCTIONS|SQL_SNVF_CHARACTER_LENGTH, SQL_SNVF_EXTRACT, SQL_SNVF_POSITION | no |
Expand Down Expand Up @@ -95,7 +95,7 @@
| SQL_CONVERT_TIMESTAMP|SQL_CVT_CHAR, SQL_CVT_VARCHAR, SQL_CVT_LONGVARCHAR, SQL_CVT_DATE, SQL_CVT_WCHAR, SQL_CVT_WLONGVARCHAR, SQL_CVT_WVARCHAR, SQL_CVT_NUMERIC, SQL_CVT_LONGVARBINARY, SQL_CVT_DECIMAL, SQL_CVT_INTEGER, SQL_CVT_BINARY, SQL_CVT_VARBINARY, SQL_CVT_TIMESTAMP, SQL_CVT_BIGINT, SQL_CVT_TIME | no |
| SQL_CONVERT_VARBINARY|SQL_CVT_CHAR, SQL_CVT_VARCHAR, SQL_CVT_LONGVARCHAR, SQL_CVT_BIT, SQL_CVT_WCHAR, SQL_CVT_WLONGVARCHAR, SQL_CVT_WVARCHAR, SQL_CVT_NUMERIC, SQL_CVT_DECIMAL, SQL_CVT_TINYINT, SQL_CVT_SMALLINT, SQL_CVT_DATE, SQL_CVT_BIGINT, SQL_CVT_REAL, SQL_CVT_FLOAT, SQL_CVT_DOUBLE, SQL_CVT_INTEGER, SQL_CVT_BINARY, SQL_CVT_VARBINARY, SQL_CVT_LONGVARBINARY, SQL_CVT_TIME, SQL_CVT_TIMESTAMP, SQL_CVT_GUID | no |
| SQL_CONVERT_LONGVARBINARY|SQL_CVT_CHAR, SQL_CVT_VARCHAR, SQL_CVT_BIT, SQL_CVT_TINYINT, SQL_CVT_WCHAR, SQL_CVT_WLONGVARCHAR, SQL_CVT_WVARCHAR, SQL_CVT_LONGVARCHAR, SQL_CVT_NUMERIC, SQL_CVT_DECIMAL, SQL_CVT_FLOAT, SQL_CVT_INTEGER, SQL_CVT_BIGINT, SQL_CVT_REAL, SQL_CVT_DATE, SQL_CVT_DOUBLE, SQL_CVT_BINARY, SQL_CVT_VARBINARY, SQL_CVT_LONGVARBINARY, SQL_CVT_TIMESTAMP, SQL_CVT_SMALLINT, SQL_CVT_TIME, SQL_CVT_GUID | no |
| SQL_PARAM_ARRAY_ROW_COUNTS | SQL_PARC_BATCH | no |
| SQL_PARAM_ARRAY_ROW_COUNTS | SQL_PARC_NO_BATCH | no |
| SQL_PARAM_ARRAY_SELECTS | SQL_PAS_NO_SELECT | no |
| SQL_SCROLL_OPTIONS | SQL_SO_FORWARD_ONLY, SQL_SO_STATIC | no |
| SQL_ALTER_DOMAIN | 0 (not supported) | no |
Expand Down Expand Up @@ -128,7 +128,7 @@
| SQL_INSERT_STATEMENT | 0 (not supported) | no |
| SQL_KEYSET_CURSOR_ATTRIBUTES1 | SQL_CA1_NEXT | no |
| SQL_KEYSET_CURSOR_ATTRIBUTES2 | 0 (not supported) | no |
| SQL_MAX_ASYNC_CONCURRENT_STATEMENTS | 0 (unknown) | no |
| SQL_MAX_ASYNC_CONCURRENT_STATEMENTS | 1 | no |
| SQL_MAX_BINARY_LITERAL_LEN | 0 (no maximum) | no |
| SQL_MAX_CATALOG_NAME_LEN | 0 (no maximum) | no |
| SQL_MAX_CHAR_LITERAL_LEN | 0 (no maximum) | no |
Expand All @@ -140,8 +140,8 @@
| SQL_SQL92_GRANT | 0 (not supported) | no |
| SQL_SQL92_REVOKE | 0 (not supported) | no |
| SQL_SQL92_ROW_VALUE_CONSTRUCTOR|SQL_SRVC_VALUE_EXPRESSION, SQL_SRVC_DEFAULT, SQL_SRVC_NULL, SQL_SRVC_ROW_SUBQUERY | no |
| SQL_STANDARD_CLI_CONFORMANCE | 0 (not supported) | no |
| SQL_SUBQUERIES | 0 (not supported) | no |
| SQL_STANDARD_CLI_CONFORMANCE | SQL_SCC_ISO92_CLI | no |
| SQL_SUBQUERIES | SQL_SQ_CORRELATED_SUBQUERIES, SQL_SQ_COMPARISON, SQL_SQ_EXISTS, SQL_SQ_IN, SQL_SQ_QUANTIFIED | no |
| SQL_TXN_ISOLATION_OPTION | SQL_TXN_REPEATABLE_READ | no |
| SQL_UNION | 0 (not supported) | no |
| SQL_FETCH_DIRECTION | SQL_FD_FETCH_NEXT | no |
Expand All @@ -151,14 +151,14 @@
| SQL_POSITIONED_STATEMENTS | 0 (not supported) | no |
| SQL_SCROLL_CONCURRENCY | SQL_SCCO_READ_ONLY | no |
| SQL_STATIC_SENSITIVITY | 0 (not supported) | no |
| SQL_MAX_CONCURRENT_ACTIVITIES | 0 (no limit) | no |
| SQL_MAX_CONCURRENT_ACTIVITIES | 1 | no |
| SQL_TXN_CAPABLE | SQL_TC_NONE | no |
| SQL_QUOTED_IDENTIFIER_CASE | SQL_IC_SENSITIVE | no |
| SQL_ACTIVE_ENVIRONMENTS | 0 (no limit) | no |
| SQL_CONCAT_NULL_BEHAVIOR | SQL_CB_NULL | no |
| SQL_CONCAT_NULL_BEHAVIOR | SQL_CB_NON_NULL | no |
| SQL_CORRELATION_NAME | SQL_CN_ANY | no |
| SQL_FILE_USAGE | SQL_FILE_NOT_SUPPORTED | no |
| SQL_GROUP_BY | SQL_GB_GROUP_BY_EQUALS_SELECT | no |
| SQL_GROUP_BY | SQL_GB_GROUP_BY_CONTAINS_SELECT | no |
| SQL_IDENTIFIER_CASE | SQL_IC_SENSITIVE | no |
| SQL_MAX_COLUMN_NAME_LEN | 0 (no limit) | no |
| SQL_MAX_COLUMNS_IN_GROUP_BY | 0 (no limit) | no |
Expand Down
9 changes: 9 additions & 0 deletions src/odbc-test/src/meta_queries_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1254,6 +1254,10 @@ BOOST_AUTO_TEST_CASE(TestGetTypeInfoAll) {
std::set< int16_t > signedDataTypes = {
SQL_BIT, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT,
SQL_REAL, SQL_FLOAT, SQL_DOUBLE, SQL_DECIMAL, SQL_NUMERIC};

std::set< std::string > uniqueTypeNames;
std::set< int16_t > uniqueDataTypes;

SQLWCHAR name[SQL_MAX_MESSAGE_LENGTH];
SQLLEN name_len;
SQLSMALLINT dataType;
Expand All @@ -1271,11 +1275,16 @@ BOOST_AUTO_TEST_CASE(TestGetTypeInfoAll) {
BOOST_REQUIRE(SQL_SUCCEEDED(ret));
BOOST_CHECK(typeNames.find(utility::SqlWcharToString(name))
!= typeNames.end());
BOOST_CHECK(uniqueTypeNames.find(utility::SqlWcharToString(name))
== uniqueTypeNames.end());
uniqueTypeNames.insert(utility::SqlWcharToString(name));

ret =
SQLGetData(stmt, 2, SQL_C_SSHORT, &dataType, sizeof(dataType), nullptr);
BOOST_REQUIRE(SQL_SUCCEEDED(ret));
BOOST_CHECK(dataTypes.find(dataType) != dataTypes.end());
BOOST_CHECK(uniqueDataTypes.find(dataType) == uniqueDataTypes.end());
uniqueDataTypes.insert(dataType);

ret =
SQLGetData(stmt, 8, SQL_C_SSHORT, &isCaseSensitive, sizeof(isCaseSensitive), nullptr);
Expand Down
30 changes: 16 additions & 14 deletions src/odbc-test/src/sql_get_info_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ BOOST_AUTO_TEST_CASE(TestValues) {
CheckStrInfo(SQL_DATA_SOURCE_READ_ONLY, "Y");
CheckStrInfo(SQL_DATABASE_NAME, "odbc-test");
CheckStrInfo(SQL_DESCRIBE_PARAMETER, "N");
CheckStrInfo(SQL_EXPRESSIONS_IN_ORDERBY, "Y");
CheckStrInfo(SQL_EXPRESSIONS_IN_ORDERBY, "N");
CheckStrInfo(SQL_INTEGRITY, "N");
CheckStrInfo(
SQL_KEYWORDS,
Expand Down Expand Up @@ -208,11 +208,11 @@ BOOST_AUTO_TEST_CASE(TestValues) {
"TIME,TABLESAMPLE,TINYINT,TRANSLATE_REGEX,TREAT,TRIGGER,TRIM_ARRAY,"
"TRUNCATE,UESCAPE,UNNEST,UPSERT,VALUE_OF,VARBINARY,VAR_POP,VAR_SAMP,"
"VERSIONING,WIDTH_BUCKET,WINDOW,WITHIN,WITHOUT");
CheckStrInfo(SQL_LIKE_ESCAPE_CLAUSE, "N");
CheckStrInfo(SQL_LIKE_ESCAPE_CLAUSE, "Y");
CheckStrInfo(SQL_MAX_ROW_SIZE_INCLUDES_LONG, "Y");
CheckStrInfo(SQL_MULT_RESULT_SETS, "N");
CheckStrInfo(SQL_MULTIPLE_ACTIVE_TXN, "Y");
CheckStrInfo(SQL_ORDER_BY_COLUMNS_IN_SELECT, "N");
CheckStrInfo(SQL_MULTIPLE_ACTIVE_TXN, "N");
CheckStrInfo(SQL_ORDER_BY_COLUMNS_IN_SELECT, "Y");
CheckStrInfo(SQL_PROCEDURE_TERM, "stored procedure");
CheckStrInfo(SQL_PROCEDURES, "N");
CheckStrInfo(SQL_ROW_UPDATES, "N");
Expand All @@ -229,8 +229,8 @@ BOOST_AUTO_TEST_CASE(TestValues) {
CheckIntInfo(SQL_QUALIFIER_LOCATION, 0);
CheckIntInfo(SQL_GETDATA_EXTENSIONS,
SQL_GD_ANY_COLUMN | SQL_GD_ANY_ORDER | SQL_GD_BOUND);
CheckIntInfo(SQL_ODBC_INTERFACE_CONFORMANCE, SQL_OIC_CORE);
CheckIntInfo(SQL_SQL_CONFORMANCE, SQL_SC_SQL92_ENTRY);
CheckIntInfo(SQL_ODBC_INTERFACE_CONFORMANCE, SQL_OIC_LEVEL1);
CheckIntInfo(SQL_SQL_CONFORMANCE, SQL_SC_SQL92_FULL);
CheckIntInfo(SQL_CATALOG_USAGE, 0);
CheckIntInfo(SQL_QUALIFIER_USAGE, 0);
CheckIntInfo(SQL_TIMEDATE_ADD_INTERVALS,
Expand All @@ -245,7 +245,7 @@ BOOST_AUTO_TEST_CASE(TestValues) {
SQL_DL_SQL92_DATE | SQL_DL_SQL92_TIME | SQL_DL_SQL92_TIMESTAMP);
CheckIntInfo(SQL_SYSTEM_FUNCTIONS,
SQL_FN_SYS_USERNAME | SQL_FN_SYS_DBNAME | SQL_FN_SYS_IFNULL);
CheckIntInfo(SQL_CONVERT_FUNCTIONS, SQL_FN_CVT_CONVERT | SQL_FN_CVT_CAST);
CheckIntInfo(SQL_CONVERT_FUNCTIONS, SQL_FN_CVT_CAST);
CheckIntInfo(SQL_OJ_CAPABILITIES,
SQL_OJ_LEFT | SQL_OJ_NOT_ORDERED | SQL_OJ_ALL_COMPARISON_OPS);
CheckIntInfo(SQL_POS_OPERATIONS, 0);
Expand All @@ -255,7 +255,7 @@ BOOST_AUTO_TEST_CASE(TestValues) {
SQL_SVE_CASE | SQL_SVE_CAST | SQL_SVE_COALESCE | SQL_SVE_NULLIF);
CheckIntInfo(SQL_STATIC_CURSOR_ATTRIBUTES1, SQL_CA1_NEXT);
CheckIntInfo(SQL_STATIC_CURSOR_ATTRIBUTES2, 0);
CheckIntInfo(SQL_PARAM_ARRAY_ROW_COUNTS, SQL_PARC_BATCH);
CheckIntInfo(SQL_PARAM_ARRAY_ROW_COUNTS, SQL_PARC_NO_BATCH);
CheckIntInfo(SQL_PARAM_ARRAY_SELECTS, SQL_PAS_NO_SELECT);
CheckIntInfo(SQL_SCROLL_OPTIONS, SQL_SO_FORWARD_ONLY | SQL_SO_STATIC);
CheckIntInfo(SQL_ALTER_DOMAIN, 0);
Expand Down Expand Up @@ -290,7 +290,7 @@ BOOST_AUTO_TEST_CASE(TestValues) {
CheckIntInfo(SQL_INSERT_STATEMENT, 0);
CheckIntInfo(SQL_KEYSET_CURSOR_ATTRIBUTES1, SQL_CA1_NEXT);
CheckIntInfo(SQL_KEYSET_CURSOR_ATTRIBUTES2, 0);
CheckIntInfo(SQL_MAX_ASYNC_CONCURRENT_STATEMENTS, 0);
CheckIntInfo(SQL_MAX_ASYNC_CONCURRENT_STATEMENTS, 1);
CheckIntInfo(SQL_MAX_BINARY_LITERAL_LEN, 0);
CheckIntInfo(SQL_MAX_CATALOG_NAME_LEN, 0);
CheckIntInfo(SQL_MAX_CHAR_LITERAL_LEN, 0);
Expand All @@ -301,7 +301,7 @@ BOOST_AUTO_TEST_CASE(TestValues) {
CheckIntInfo(SQL_SQL92_FOREIGN_KEY_UPDATE_RULE, 0);
CheckIntInfo(SQL_SQL92_GRANT, 0);
CheckIntInfo(SQL_SQL92_REVOKE, 0);
CheckIntInfo(SQL_STANDARD_CLI_CONFORMANCE, 0);
CheckIntInfo(SQL_STANDARD_CLI_CONFORMANCE, SQL_SCC_ISO92_CLI);
CheckIntInfo(SQL_TXN_ISOLATION_OPTION, SQL_TXN_REPEATABLE_READ);
CheckIntInfo(SQL_UNION, 0);

Expand Down Expand Up @@ -557,17 +557,19 @@ BOOST_AUTO_TEST_CASE(TestValues) {
SQL_SRVC_VALUE_EXPRESSION | SQL_SRVC_DEFAULT | SQL_SRVC_NULL
| SQL_SRVC_ROW_SUBQUERY);

CheckIntInfo(SQL_SUBQUERIES, 0);
CheckIntInfo(SQL_SUBQUERIES, SQL_SQ_CORRELATED_SUBQUERIES | SQL_SQ_COMPARISON
| SQL_SQ_EXISTS | SQL_SQ_IN
| SQL_SQ_QUANTIFIED);

CheckIntInfo(SQL_FETCH_DIRECTION, SQL_FD_FETCH_NEXT);

CheckShortInfo(SQL_MAX_CONCURRENT_ACTIVITIES, 0);
CheckShortInfo(SQL_MAX_CONCURRENT_ACTIVITIES, 1);
CheckShortInfo(SQL_QUOTED_IDENTIFIER_CASE, SQL_IC_SENSITIVE);
CheckShortInfo(SQL_ACTIVE_ENVIRONMENTS, 0);
CheckShortInfo(SQL_CONCAT_NULL_BEHAVIOR, SQL_CB_NULL);
CheckShortInfo(SQL_CONCAT_NULL_BEHAVIOR, SQL_CB_NON_NULL);
CheckShortInfo(SQL_CORRELATION_NAME, SQL_CN_ANY);
CheckShortInfo(SQL_FILE_USAGE, SQL_FILE_NOT_SUPPORTED);
CheckShortInfo(SQL_GROUP_BY, SQL_GB_GROUP_BY_EQUALS_SELECT);
CheckShortInfo(SQL_GROUP_BY, SQL_GB_GROUP_BY_CONTAINS_SELECT);
CheckShortInfo(SQL_IDENTIFIER_CASE, SQL_IC_SENSITIVE);
CheckShortInfo(SQL_MAX_COLUMN_NAME_LEN, 0);
CheckShortInfo(SQL_MAX_COLUMNS_IN_GROUP_BY, 0);
Expand Down
Loading

0 comments on commit 0c28b96

Please sign in to comment.