Più che in base al DBMS, credo che il tipo del valore di ritorno venga dimensionato dal driver anche in base al valore che viene restituito.
Accedendo a MySQL, se il valore di COUNT rientra nel range di Int32, non penso che tu ottenga comunque un Int64, prova a verificarlo.
Poi, che il driver riesca a creare un tipo Int64 qualora il valore ecceda questi limiti, buon per il driver.
Quello che sostengo è che difficilmente ti troverai ad avere una tabella che possiede un numero di record superiore a 2 miliardi; in tal caso, penso che ci sia un problema di architettura del database in quanto una simile quantità di dati andrebbe archiviata oppure organizzata in modo diverso, altrimenti qualsiasi conteggio, selezione, aggiornamento e così via in quella tabella sarebbe deleterio per qualsiasi parametro prestazionale.![]()