Avec Oracle, les noms de colonne sont mis en majuscule dans le résultat de la requête : essaie avec dr("PHOTO_PERSONNEL")
Sinon, juste une petite remarque : si tu insères les données de l'image à partir d'un fichier, inutile de charger l'image puis de l'enregistrer dans un stream: tu peux récupérer directement les données brutes du fichier avec File.ReadAllBytes. Avec la technique que tu utilises, tu dégrades inutilement la qualité de l'image à cause du décodage/réencodage.