* @param nValCount The count of the already set bind values.
*/
private void bindInsert(PreparedStatement stmt, int nValCount) throws SQLException
{
Index pk = m_table.getPrimaryKey();
OID oid = m_instance.getOID();
Object value;
for (int i = 0, n = pk.getIndexColumnCount(); i < n; ++i)
{
Column column = pk.getIndexColumn(i).getColumn();
if (getValue(column) == Undefined.VALUE)
{
value = m_adapter.toBind(column, oid.getValue(i));
if (m_adapter.isDebug())
{
m_adapter.logBindValue(nValCount, value);
}
m_adapter.getBind(column).setValue(stmt, nValCount++, value, m_adapter);
}
}
for (int i = 0, n = m_table.getColumnCount(); i < n; ++i)
{
value = getValue(i);
if (value != Undefined.VALUE)
{
Column column = m_table.getColumn(i);
value = m_adapter.toBind(column, value);
Bind bind = m_adapter.getBind(column);
if (m_adapter.isDebug())
{
m_adapter.logBindValue(nValCount, value);
}
bind.setValue(stmt, nValCount++, value, m_adapter);
if (m_adapter.isCaseConverted(column))
{
if (m_adapter.isDebug())
{
m_adapter.logBindValue(nValCount, value);
}
bind.setValue(stmt, nValCount++, value, m_adapter);
}
}
}
if (m_bDenorm)
{
for (int i = 0, n = pk.getIndexColumnCount(); i < n; ++i)
{
Column column = pk.getIndexColumn(i).getColumn();
value = m_adapter.toBind(column, oid.getValue(i));
if (m_adapter.isDebug())
{
m_adapter.logBindValue(nValCount, value);
}