Normalization Primitive and Composite data Types: Normally in basic database we use numbers and strings as common datatype which is primitive datatypes while complex datatype are called composite data type in simple word.
Primitive datatypes are the basic units of a language; each primitive value contains a single datum (as opposed to an array of multiple items) and describes that datum literally. Primitive data is very straightforward. Primitive datatypes are, as their name suggests, simple. They can hold text messages, frame numbers, movie clip size values, and so on, but they don't readily accommodate higher levels of complexity.
Examples: Number, string, boolean, undefined, and null.
Composite data Types are complex data type. For more elaborate data handling -- such as simulating the physics of a dozen bouncing balls or managing a quiz with 500 questions and answers -- we turn to composite datatypes. Using composite data, we can manage multiple pieces of related data as a single datum. Whereas a single number is a primitive datum, a list (i.e., an array) of multiple numbers is a composite datum.
Examples: Suppose we wanted to track the profile of a customer named Derek. We could create a series of variables that store Derek's attributes as primitive values, like this: