Variable birth_date is a character variable. Dates in SAS must be numeric. You have to create a numeric variable with that value and then format the numeric variable. In this case, the values like 21658 and 31193 may be recognizable by SAS as dates, or they may have come over from Excel in which case additional manipulation is needed.
data want;
set have;
num_birth_date=input(birth_date,12.);
format num_birth_date mmddyy10.;
run;
Side issue: if at all possible, avoid storing dates as characters. Store them in numeric SAS variables, in a form that SAS will recognize, which is the number of days since 01JAN1960, formatted however you want.
--
Paige Miller