It is not clear what you are starting with since the code you shared cannot run.
If the variable you named DATE is an actual SAS date variable then it is NUMERIC. In order to create a CHARACTER variable you will need to use a different variable name. And if it is an actualy date variable it cannot contain any partial date values, so you can ignore the SDTM specifications for how to represent partial date values.
To convert a date value into a character value in the style YYYY-MM-DD you can either the YYMMDD10. format, Or the YYMMDDD10. format, the extra D stands for DASH. Or use the E8601DA10. format.
data want;
set db;
charvar=put(date,yymmdd10.);
run;
If your variable is character and looks like the text in your example then you don't need to do anything since it is already in that style.