When a data load is done - the max value of the identity key column and the identity key may not be the same. So a SELECT MAX() FROM TABLENAME may not always give the correct value.
Off hand you can't. For example, let's say the ID is 5. Now, you insert a record incrementing it to 6. Immediately after the insert, you delete the record.
In this case the current value is 6 but you've deleted the record so max will still return 5. Granted in most database systems its better to disable records by setting some "enable" field to OFF, rather than ever actually deleting data.