- Learning PostgreSQL 11
- Salahaldin Juba Andrey Volkov
- 302字
- 2021-07-02 13:11:38
Domain integrity constraint
The domain integrity constraint ensures data validity. The first step in defining the domain integrity constraint is to determine the appropriate data type. The domain data types could be an integer, real, boolean, character, text, inet, and so on. For example, the data type of the first name and email address is text. After specifying the data type, check constraints, such as the mail address pattern, need to be defined:
- Check constraint: A check constraint can be applied to a single attribute or a combination of many attributes in a tuple. Let's assume that the customer_service schema is defined as customer_id, service_id, start_date, end_date, and order_date. For this relation, we can have a check constraint to make sure that start_date and end_date are entered correctly by applying the following check: start_date is less than end_date.
- Default constraint: The attribute can have a default value. The default value could be a fixed value such as the default hourly wage of the employees, for example, $10. It may also have a dynamic value based on a function such as random, current time, and date. For example, in the customer_service relation, order_date can have a default value, which is the current date.
- Unique constraint: A unique constraint guarantees that the attribute has a distinct value in each tuple. It allows null values. For example, let's assume that we have a relation player defined as a player (player_id, player_nickname). The player uses his ID to play with others; he can also pick up a nickname, which is also unique to identify himself.
- Not null constraint: By default, the attribute value can be null. The not null constraint prevents an attribute from having a null value. For example, each person in the birth registry record should have a name.
推薦閱讀
- 數據科學實戰(zhàn)手冊(R+Python)
- Learn ECMAScript(Second Edition)
- Node.js 10實戰(zhàn)
- Android NDK Beginner’s Guide
- Java持續(xù)交付
- Kinect for Windows SDK Programming Guide
- Web性能實戰(zhàn)
- R語言數據可視化:科技圖表繪制
- Emotional Intelligence for IT Professionals
- 貫通Tomcat開發(fā)
- WordPress Search Engine Optimization(Second Edition)
- Software Architecture with Python
- 你好!Java
- 從零開始學Unity游戲開發(fā):場景+角色+腳本+交互+體驗+效果+發(fā)布
- INSTANT PLC Programming with RSLogix 5000