No parece un trabajo para mysql... hay infinidad de algoritmos en javascript y en php...
PHP
https://www.google.es/search?q=validar+cuenta+corriente+php
Javascript
https://www.google.es/search?q=validar+cuenta+corriente+javascript
ASP
https://www.google.es/search?q=valid...+corriente+asp
C++
https://www.google.es/search?q=valid...riente+c%2B%2B http://www.programacion.com/articulo...cuenta_ccc_135
en cualquier caso te serviran de guia para corregir tu script.
Analizando veo que tu al calcular los digitos de control haces
SET primer_dc = 11 - resto1;
IF primer_dc = 10 THEN
SET primer_dc = 1;
END IF;
mientras que los scripts hacen
$primer_digito_control = 11 - $resto;
if($primer_digito_control == 11) $primer_digito_control = 0;
if($primer_digito_control == 10) $primer_digito_control = 1;
tanto en el primero como en el segundo digito...
Creo que ahi tienes el error puesto que la unica posibilidad de que el digito sea 0 es que resto sea cero ... pero 11-resto nunca da cero.
Sort