| 783 | } |
| 784 | |
| 785 | SQLRETURN SQLGetConnectAttr(SQLHDBC conn, SQLINTEGER attribute, SQLPOINTER value_ptr, |
| 786 | SQLINTEGER buffer_length, SQLINTEGER* string_length_ptr) { |
| 787 | ARROW_LOG(DEBUG) << "SQLGetConnectAttrW called with conn: " << conn |
| 788 | << ", attribute: " << attribute << ", value_ptr: " << value_ptr |
| 789 | << ", buffer_length: " << buffer_length << ", string_length_ptr: " |
| 790 | << static_cast<const void*>(string_length_ptr); |
| 791 | using ODBC::ODBCConnection; |
| 792 | |
| 793 | return ODBCConnection::ExecuteWithDiagnostics(conn, SQL_ERROR, [=]() { |
| 794 | const bool is_unicode = true; |
| 795 | ODBCConnection* connection = reinterpret_cast<ODBCConnection*>(conn); |
| 796 | return connection->GetConnectAttr(attribute, value_ptr, buffer_length, |
| 797 | string_length_ptr, is_unicode); |
| 798 | }); |
| 799 | } |
| 800 | |
| 801 | SQLRETURN SQLSetConnectAttr(SQLHDBC conn, SQLINTEGER attr, SQLPOINTER value_ptr, |
| 802 | SQLINTEGER value_len) { |