public static long GetMaxID(this IDAC dac, string tableName, string idColName) { return(dac.ExecuteScalar <long>( dac.QuickString( "SELECT MAX(T.ID) FROM (SELECT {0} ID FROM {1} WHERE ID IS NOT NULL UNION SELECT 0 ID ) T", SQLBuilderCommand.ColumnName(idColName), SQLBuilderCommand.TableName(tableName) ) )); }