SQL provides a set of predefined data types, such as INTEGER and VARCHAR, that you can use to store the data that your application uses, but they might not satisfy all of the requirements you have to model your data.
User-defined types (UDTs) allow you to extend SQL by creating your own data types and then using them like predefined data types.