fkName = shortenName(fkName, getPlatformInfo().getMaxIdentifierLength());
fkName = shortenName(fkName, getMaxForeignKeyNameLength());
    public String getForeignKeyName(Table table, ForeignKey fk)    {        String  fkName    = fk.getName();        boolean needsName = (fkName == null) || (fkName.length() == 0);        if (needsName)        {            StringBuffer name = new StringBuffer();                for (int idx = 0; idx < fk.getReferenceCount(); idx++)            {                name.append(fk.getReference(idx).getLocalColumnName());                name.append("_");            }            name.append(fk.getForeignTableName());            fkName = getConstraintName(null, table, "FK", name.toString());        }        fkName = shortenName(fkName, getPlatformInfo().getMaxIdentifierLength());        if (needsName)        {            _log.warn("Encountered a foreign key in table " + table.getName() + " that has no name. " +                      "DdlUtils will use the auto-generated and shortened name " + fkName + " instead.");        }        return fkName;    }