常量的SQL语句 一个没有绑定变量的SQL语句、SQL语句块或是存储过程就被称为常量的SQL语句。OTL通过一个静态的函数来执行这样的SQL语句。 例如: // static otl_cursor::direct_exec() otl_cursor::direct_exec (db, // connect object "create table test_tab(f1 int, f2 varchar(30))" ); // create table otl_cursor::direct_exec (db, // connect object "drop table test_tab", // SQL statement or PL/SQL block otl_exception::disabled // disable OTL exceptions, // in other words, ignore any // database error ); // drop table // or otl_connect::direct_exec() db.direct_exec // connect object ("create table test_tab(f1 int, f2 varchar(30))" ); // create table db.direct_exec // connect object ("drop table test_tab", // SQL statement or PL/SQL block otl_exception::disabled // disable OTL exceptions, // in other words, ignore any // database error ); // drop table // or otl_connect::operator<<(const char*) db<<"create table test_tab(f1 number, f2 varchar2(30))"; try{ db<<"drop table test_tab""; // SQL statement or PL/SQL block }catch(otl_exception&){ // ignore a database error } otl_cursor是OTL的一个内部类。它是对direct_exec()函数的一个底层类。因为以后版本该类可能不再对外提供,所以不建议使用。 下面这个例子为direct_exe()返回结果值的例子: // static otl_cursor::direct_exec long rpc=otl_cursor::direct_exec (db, // connect object "delete from test_tab where f1>=95" ); cout<<"Rows deleted: "<<rpc<<endl; // or otl_connect:direct_exec long rpc=db.direct_exec // connect object ("delete from test_tab where f1>=95" ); cout<<"Rows deleted: "<<rpc<<endl;
时间: 2024-10-19 16:09:12