Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #ifdef WIN32
- #include <windows.h>
- #endif
- #include <sql.h>
- #include <sqlext.h>
- #include <sqltypes.h>
- #include "unicode/ustdio.h"
- #include "unicode/ustring.h"
- #include "unicode/unistr.h"
- #include "unicode/gregocal.h"
- #include "unicode/normlzr.h"
- using namespace std;
- int main (int argc, char* argv[])
- {
- SQLHSTMT hSQLStatement = 0;
- SQLHENV hSQLEnvironment = 0;
- SQLHDBC hSQLODBC = 0;
- SQLRETURN sqlRet = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &hSQLEnvironment);
- if(SQL_SUCCEEDED(sqlRet))
- {
- sqlRet = SQLSetEnvAttr(hSQLEnvironment,
- SQL_ATTR_ODBC_VERSION,
- (void*)SQL_OV_ODBC3,
- 0);
- if(SQL_SUCCEEDED(sqlRet))
- {
- sqlRet = SQLAllocHandle(SQL_HANDLE_DBC,
- hSQLEnvironment,
- &hSQLODBC);
- }
- else
- {
- cout << "Error in SQLAllocHandle for SQL_HANDLE_DBC" << endl;
- }
- }
- else
- {
- cout << "Error in SQLAllocHandle for SQL_HANDLE_ENV" << endl;
- }
- UnicodeString DSNName = "TestDSN";
- UnicodeString UserName = "sa";
- UnicodeString Password = "Admin@123";
- UnicodeString Value = "";
- UChar32 character = 20053;
- Value.append(character);
- character = 20077;
- Value.append(character);
- character = 131140;
- Value.append(character);
- character = 131145;
- Value.append(character);
- character = 20090;
- Value.append(character);
- character = 19989;
- Value.append(character);
- UnicodeString SQLStatement = "INSERT INTO mytable (sample) VALUES(N";
- SQLStatement.append("'");
- SQLStatement.append(Value);
- SQLStatement.append("'");
- SQLStatement.append(")");
- if(0 != hSQLODBC)
- {
- SQLRETURN sqlRet = SQLConnectW(hSQLODBC,
- (SQLWCHAR*)DSNName.getTerminatedBuffer(),
- SQL_NTS,
- (SQLWCHAR*)UserName.getTerminatedBuffer(),
- SQL_NTS,
- (SQLWCHAR*)Password.getTerminatedBuffer(),
- SQL_NTS);
- if(SQL_SUCCEEDED(sqlRet))
- {
- cout << "Connection to database successful" << endl;
- SQLRETURN sqlRet = SQLAllocHandle(SQL_HANDLE_STMT,
- hSQLODBC,
- &hSQLStatement);
- if(SQL_SUCCEEDED(sqlRet))
- {
- sqlRet = SQLExecDirectW(hSQLStatement,
- (SQLWCHAR*)SQLStatement.getTerminatedBuffer(),
- SQL_NTS);
- if(SQL_SUCCEEDED(sqlRet))
- {
- cout << "Query Execution successful" << endl;
- }
- else
- cout << "Query Execution failed" << endl;
- }
- }
- else
- {
- cout << "Connection to database failed" << endl;
- }
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment