Begrænsninger er, hvad databaser bruger til at beskytte sig selv mod fejlagtige applikationer, ikke fra brugere.
Det betyder, at overtrædelser af begrænsninger skal fanges af applikationen og evt. ryddet op til præsentation for brugeren. Jeg ville betragte en applikation, der ikke gjorde det, for at være mangelfuld på en eller anden måde.
Jeg siger 'muligvis', da din ansøgning (i hvert fald for dette tilfælde) aldrig skulle se det ske. Det burde næsten helt sikkert bruge en drop-down kontrol med begrænset valg til sådan noget. Hvis den brugte en kombinationsboks eller (chok, rædsel) et tekstindtastningsfelt i frit format, skulle det omdefineres.
Det ville betyde, at overtrædelsen aldrig ville forekomme, medmindre, selvfølgelig, applikationen og begrænsningen kommer ud af synkronisering på et tidspunkt. Men det er noget, der bør fanges i test, længe før en kunde nogensinde får deres uvorne hænder på din ansøgning.
For at besvare dit faktiske spørgsmål kan de beskeder, der kommer ud af Oracle for overtrædelser af begrænsninger, ikke ændres. Det bedste du kan gøre er at navngive dine begrænsninger intelligent, så det kan give mening for en slutbruger.
Men jeg fastholder stadig, at denne præsentation af problemer for en bruger er applikationslagets ansvar, ikke databaselaget.