| Home | How To | Online Documentation | Support | Download | Order |
|
|
SACommand constructor /* SAConnection con; ... SACommand cmd; cmd.setConnection(&con); cmd.setCommandText("Select * from test_tbl"); ... /* SAConnection con; ... SACommand cmd(&con, "Select * from test_tbl"); SACommand destructor /* SACommand *pCmd = new SACommand; ... delete pCmd; Connection /* SACommand cmd; ... SAConnection *pCon = cmd.Connection() ; pCon->Commit(); setConnection /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd; cmd.setConnection(&con); Open /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con); cmd.Open(); isOpened /* SAConnection con; SACommand cmd(&con); ... if(cmd.isOpened() ) cmd.Close(); Close /* SAConnection con; SACommand cmd(&con); ... if(cmd.isOpened()) cmd.Close(); setCommandText /* SAConnection con; ... SACommand cmd(&con); cmd.setCommandText("Select * from test_tbl"); cmd.Execute(); ... CommandText /* SAConnection con; SACommand cmd(&con); ... SAString sCmd = cmd.CommandText() ; CommandType /* SAConnection con; SACommand cmd(&con, "Select * from test_tbl"); if(cmd.CommandType() != SA_CmdSQLStmt) printf("Very strange!\n"); Prepare /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Prepare(); ... Execute /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Execute(); ... isResultSet /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Execute(); if(cmd.isResultSet()) RowsAffected /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Delete * from test_tbl"); cmd.Execute(); printf("Rows deleted: %d\n", cmd.RowsAffected()); FetchNext /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Execute(); while(cmd.FetchNext())
CreateParam /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "test_proc"); cmd.CreateParam("nInput", SA_dtLong, sizeof(long), SA_ParamInput); cmd.CreateParam("nOutput", SA_dtLong, sizeof(long), SA_ParamOutput); cmd << SAPos("nInput") << 1L; /*bind input*/ cmd.Execute(); printf("Output value: %ld\n", cmd.Param("nOutput").asLong()); DestroyParams /* SAConnection con; SACommand cmd(&con, "test_proc"); ... cmd.DestroyParams(); ParamCount /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "test_proc"); for(int i = 0; i < cmd.ParamCount(); ++i) ParamByIndex /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "test_proc"); for(int i = 0; i < cmd.ParamCount();
++i) Param /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl where fid = :1 or fid = :fidvalue2"); cmd.Param(1).setAsLong() = 15; cmd.Param("fidvalue2").setAsLong() = 32; cmd.Execute(); ... operator << /* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl where fid = :1 or fid = :fidvalue2"); cmd << 15L << SAPos("fidvalue2") << 32L; cmd.Execute(); ... FieldCount
/* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Execute(); for(int i = 0; i < cmd.FieldCount();
++i) Field/* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select fid from test_tbl"); cmd.Execute(); if(cmd.FetchNext())
operator []/* SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select fid from test_tbl"); cmd.Execute(); if(cmd.FetchNext())
NativeHandles/* #include
<ora7API.h> SAConnection con; con.Connect("dbname", "username", "password", SA_Oracle_Client); SACommand cmd(&con, "Select * from test_tbl"); cmd.Open(); /* make sure command handles are initialized*/ if(con.ClientVersion() >= 0x0008000)
/* OCI 8.x */ ora8API *p_ora8API = (ora8API *)con.NativeAPI(); ora8CommandHandles *p_ora8CH = (ora8CommandHandles *)cmd.NativeHandles(); /* call any OCI*
function(s) */ } ora7API *p_ora7API = (ora7API *)con.NativeAPI(); ora7CommandHandles *p_ora7CH = (ora7CommandHandles *)cmd.NativeHandles(); /* call any o*
function(s) */ } Option /* SAConnection con; con.Connect("dbname", "username", "password", SA_InterBase_Client); /* assume t_field is a TIMESTAMP type field (introduced in
SQL Dialect 3) cmd.setOption("SQLDialect")= "1"; cmd.Execute(); // returns an error cmd.setOption("SQLDialect")="3"; cmd.setCommandText("Select t_field from test_tbl"); cmd.Execute(); // no error while(cmd.FetchNext()) /* SAConnection con; con.Connect("dbname", "username", "password", SA_SQLBase_Client); SACommand cmd(&con, "Select fid from test_tbl"); cmd.setOption("SQLPPCX")="on"; cmd.Execute(); con.Commit(); // result set will not be destroyed while(cmd.FetchNext()) cmd.setOption("SQLPPCX")="off"; cmd.setCommandText("Select t_field from test_tbl"); cmd.Execute(); con.Commit(); // result set will be destroyed /* /*The following code
of Example 3 is incorrect, SAConnection con; con.Connect("dbname", "username", "password", SA_SQLServer_Client); SACommand cmd1(&con, "Select fid from test_tbl"); SACommand cmd2(&con, "Insert into temp_tbl (fid_tmp) values (:1)"); cmd1.Execute(); while(cmd1.FetchNext()) /*The following code of Example 3 is correct.*/ SAConnection con; con.Connect("dbname", "username", "password", SA_SQLServer_Client); SACommand cmd1(&con, "Select fid from test_tbl"); cmd1.setOption("OpenCursor")="100"; SACommand cmd2(&con, "Insert into temp_tbl (fid_tmp) values (:1)"); cmd1.Execute(); while(cmd1.FetchNext()) con.Commit(); Problems and QuestionsIf you haven't found the answer to your questions or have some problems on using the Library, please, send e-mail to howto@sqlapi.com. |
|||||||||||||||||