{
String printableString = (cursorName == null) ? "" : cursorName;
throw StandardException.newException(SQLState.LANG_CURSOR_NOT_UPDATABLE, printableString);
}
ExecCursorTableReference refTab = preStmt.getTargetTable();
String schemaName = refTab.getSchemaName();
exposedTableName = makeTableName(null, refTab.getExposedName());
baseTableName = makeTableName(schemaName,
refTab.getBaseName());
SchemaDescriptor tableSchema = null;
tableSchema = getSchemaDescriptor(refTab.getSchemaName());
/*
** This will only happen when we are binding against a publication
** dictionary w/o the schema we are interested in.
*/
if (tableSchema == null)
{
throw StandardException.newException(SQLState.LANG_SCHEMA_DOES_NOT_EXIST, refTab.getSchemaName());
}
/* Create dependency on target table, in case table not named in
* positioned update/delete. Make sure we find the table descriptor,
* we may fail to find it if we are binding a publication.
*/
TableDescriptor td = getTableDescriptor(refTab.getBaseName(), tableSchema);
if (td == null)
{
throw StandardException.newException(SQLState.LANG_TABLE_NOT_FOUND, refTab.getBaseName());
}
/*
** Add all the result columns from the target table.