我在Oracle中创建了一个新的TYPE,以便在我的表和本地C++对象(我正在使用C++的OCCI接口)之间进行奇偶校验。ORA-00947:在Oracle中创建对象时没有足够的值
在代码中我使用
void insertRowInTable()
{
string sqlStmt = "INSERT INTO MY_TABLE_T VALUES (:x)";
try{
stmt = con->createStatement (sqlStmt);
ObjectDefinition *o = new ObjectDefinition();
o->setA(0);
o->setB(1);
o->setC(2);
stmt->setObject (1, o);
stmt->executeUpdate();
cout << "Insert - Success" << endl;
delete (o);
}catch(SQLException ex)
{
//exception code
}
代码编译,连接到数据库,但会引发以下异常
异常抛出的insertRow错误号:947 ORA-00947:没有足够的 值
我有问题的“sqlStmt”吗?语法或绑定有问题吗?
当然,我已经建立了环境和连接
env = Environment::createEnvironment (Environment::OBJECT);
occiobjm (env);
con = env->createConnection (user, passwd, db);
什么是'语句'? “MyObject”或变量“o”与你的问题有什么关系?请尝试创建[最小化,完整和可验证示例](http://stackoverflow.com/help/mcve)并向我们显示。 –
我增加了更多的代码。 ObjectDefinition由OTT生成,我想将序列化的对象存储在表中。 – cateof