About the Easysoft ODBC-Ethereum Driver

The Easysoft ODBC-Ethereum Driver provides real-time access to Ethereum data from any application that supports ODBC.

ODBC API and scalar functions

API functions

Use this table to find out what ODBC API functions the Easysoft ODBC-Ethereum Driver supports:

Function Status

SQLAllocConnect

Supported

SQLAllocEnv

Supported

SQLAllocHandle

Supported

SQLAllocStmt

Supported

SQLBindCol

Supported

SQLBindParameter

Supported

SQLBrowseConnect

Not supported

SQLBulkOperations

Supported

SQLCancel

Supported

SQLCloseCursor

Supported

SQLColAttribute

Supported

SQLColAttributes

Supported

SQLColumnPrivileges

Not supported

SQLColumns

Supported

SQLConnect

Supported

SQLCopyDesc

Supported

SQLDisconnect

Supported

SQLDriverConnect

Supported

SQLDrivers

Supported

SQLEndTran

Supported

SQLError

Supported

SQLExecDirect

Supported

SQLExecute

Supported

SQLExtendedFetch

Supported

SQLFetch

Supported

SQLFetchScroll

Supported

SQLForeignKeys

Supported

SQLFreeConnect

Supported

SQLFreeEnv

Supported

SQLFreeHandle

Supported

SQLFreeStmt

Supported

SQLGetConnectAtt

Supported

SQLGetConnectOption

Supported

SQLGetCursorName

Supported

SQLGetData

Supported

SQLGetDescField

Supported

SQLGetDescRec

Supported

SQLGetDiagField

Supported

SQLGetDiagRec

Supported

SQLGetEnvAttr

Supported

SQLGetFunctions

Supported

SQLGetInfo

Supported

SQLGetStmtAttr

Supported

SQLGetStmtOption

Supported

SQLGetTypeInfo

Supported

SQLMoreResults

Supported

SQLNativeSql

Supported

SQLNumParams

Supported

SQLNumResultCols

Supported

SQLParamData

Supported

SQLParamOptions

Supported

SQLPrepare

Supported

SQLPrimaryKeys

Supported

SQLProcedureColumns

Supported

SQLProcedures

Supported

SQLPutData

Supported

SQLRowCount

Supported

SQLSetConnectAttr

Supported

SQLSetConnectOption

Supported

SQLSetCursorName

Supported

SQLSetDescField

Supported

SQLSetDescRec

Supported

SQLSetEnvAttr

Supported

SQLSetParam

Supported

SQLSetPos

Supported

SQLSetScrollOptions

Supported

SQLSetStmtOption

Supported

SQLSetStmtAttr

Supported

SQLStatistics

Supported

SQLTablePrivileges

Not supported

SQLTables

Supported

SQLTransact

Supported

Scalar functions

The Easysoft ODBC-Ethereum Driver supports a number of scalar functions:

Use either the SQL-92 or ODBC syntax with scalar functions. For example:

SELECT
  Invoice_Id,
  Customer_Name,
  EXTRACT(YEAR FROM Due_Date) as "Year"
FROM
  Invoice

SELECT
  Invoice_Id,
  Customer_Name,
  {fn EXTRACT(YEAR FROM Due_Date)} as "Year"
FROM
  Invoice

String functions

The Easysoft ODBC-Ethereum Driver supports these string functions:

  • ASCII(string_exp)

  • BIT_LENGTH(string_exp)

  • CHAR(code)

  • CHAR_LENGTH(string_exp)

  • CHARACTER_LENGTH(string_exp)`

  • CONCAT(string_exp1, string_exp2)

  • DIFFERENCE('ABC', 'DEF')

  • INSERT(string_exp1, start, length, string_exp2)

  • LCASE(string_exp)

  • LEFT(string_exp, count)

  • LENGTH(string_exp)

  • LOCATE(string_exp1, string_exp2[,start])

  • LTRIM(string_exp)

  • OCTET_LENGTH(string_exp)

  • POSITION(char_exp IN char_exp)

  • REPEAT(string_exp, count)

  • REPLACE(string_exp1, string_exp2, string_exp3)

  • RIGHT(string_exp, count)

  • RTRIM(string_exp)

  • SOUNDEX(string_exp)

  • SPACE(count)

  • UCASE(string_exp)

Numeric functions

The Easysoft ODBC-Ethereum Driver supports these numeric functions:

  • ABS(numeric_exp)

  • ACOS(float_exp)

  • ASIN(float_exp)

  • ATAN(float_exp)

  • CEILING(numeric_exp)

  • COS(float_exp)

  • COT(float_exp)

  • DEGREES(numeric_exp)

  • EXP(float_exp)

  • FLOOR(numeric_exp)

  • LOG(float_exp)

  • LOG10(float_exp)

  • MOD(integer_exp1, integer_exp2)

  • PI()

  • POWER(numeric_exp, integer_exp)

  • RADIANS(numeric_exp)

  • RAND([integer_exp])

  • ROUND(numeric_exp, integer_exp)

  • SIGN(numeric_exp)

  • SIN(float_exp)

  • SQRT(float_exp)

  • TAN(float_exp)

  • TRUNCATE(numeric_exp, integer_exp)

Time, date, and interval functions

The Easysoft ODBC-Ethereum Driver supports these time, date, and interval functions:

  • CURRENT_DATE()

  • CURRENT_TIME[(time-precision)]

  • CURRENT_TIMESTAMP[(timestamp-precision)]

  • DAYNAME(date_exp)

  • DAYOFMONTH(date_exp)

  • DAYOFWEEK(date_exp)

  • DAYOFYEAR(date_exp)

  • EXTRACT(extract-field FROM extract-source)

  • HOUR(time_exp)

  • MINUTE(time_exp)

  • MONTH(date_exp)

  • MONTHNAME(date_exp)

  • QUARTER(date_exp)

  • SECOND(time_exp)

  • TIMESTAMPADD(interval, integer_exp, timestamp_exp)

  • TIMESTAMPDIFF(interval, timestamp_exp1, timestamp_exp2)

  • WEEK(date_exp)

  • YEAR(date_exp)

System functions

The Easysoft ODBC-Ethereum Driver supports these system functions:

  • DATABASE()

  • IFNULL(exp, value)

  • USER()

Conversion functions

The Easysoft ODBC-Ethereum Driver supports supports the SQL-92 CAST function for conversion between compatible data types.

Data type mapping

The Easysoft ODBC-Ethereum Driver maps Ethereum JSON API data types to ODBC data types in this way:

Ethereum JSON API data type ODBC data type

String

SQL_WVARCHAR

Boolean

SQL_BIT

Number

SQL_DOUBLE

Object

SQL_WLONGVARCHAR

Array

SQL_WLONGVARCHAR

Finding out more about data types on Windows

If you need more information about a data types, for example, the precision and scale, use Microsoft’s ODBC Test to do this.

  1. Download the version of ODBC Test that matches your application’s architecture from:

  2. Copy both files to a folder on the machine where Easysoft ODBC-Ethereum Driver is installed.

  3. Double-click odbcte32.exe.

  4. Select Con > Full Connect.

  5. Choose your Easysoft ODBC-Ethereum Driver data source from the list.

  6. Choose Catalog > SQLGetTypeInfo.

  7. Either choose SQL_ALL_TYPES=0 (1.0) or a specific data type from the DataType list.

  8. Choose Results > Get Data All.