Lo que yo hago en esos casos, es determinar la llave en la tabla de la base de datos para que no se pueda duplicar le mismo número de proveedor.
despues:
Código:
try
consulta sql: insert nuevo proveedor
except on EKeyViolation then
"ya existe"
si defines bien tu llave, no será necesario un stored procedure para determinar si el registro ya existe, ya que si quieres guardar un registro duplicado, el DBA te dirá que hay una violación de llave primaria.