Home  >  Article  >  Database  >  How to view foreign keys in the table in navicat

How to view foreign keys in the table in navicat

angryTom
angryTomOriginal
2019-08-12 15:46:1516442browse

How to view foreign keys in the table in navicat

This article uses the tool navicat software to assist in checking the foreign keys that exist in a certain MYSQL table, so that you can quickly check the foreign keys that exist in the table.

Recommended tutorial: navicat graphic tutorial

##1. Open navicat and select the database you want to operate.


How to view foreign keys in the table in navicat

2. Select a table in the right area to view the foreign keys in the table. The specific operation is as shown in the figure below:

How to view foreign keys in the table in navicat

3. Continue with the previous step. After clicking the table, select the menu on the menu bar above and click the Design Table option as shown below:

How to view foreign keys in the table in navicat

4. The last step is to view the foreign key fields in the table. The operation continues from step 3. The operation is as shown in the figure below: click the design table to enter the interface: the detailed information has been marked. The steps to view the foreign keys are more detailed with the help of tools. Intuitive.

How to view foreign keys in the table in navicat

Extended information

 

If the common key is the primary key in a relationship , then this common key is called the foreign key of another relationship. It can be seen that foreign keys represent the relevant links between two relationships. The table with the foreign key of another relationship as the primary key is called the master table, and the table with the foreign key is called the slave table of the master table. Foreign keys are also called foreign keywords.

Function

To maintain data consistency and integrity, the main purpose is to control the data stored in foreign key tables. To associate two tables, the foreign key can only refer to the values ​​of columns in the table or use null values.

If no foreign key is used, a value (such as 20140999999) is inserted into the student number field of Table 2, but this value does not exist in Table 1. At this time, the database allows the insertion and will not block the inserted value. Data is checked for relationships. However, when setting up a foreign key, the value you insert into the student ID field of Table 2 must be found in the student ID field of Table 1. At the same time, if you want to delete a certain student number field in Table 1, you must ensure that there is no column in Table 2 that references the field value, otherwise it will not be deleted. This is called maintaining data consistency and integrity. As shown on the right, if Table 2 still references a certain student ID in Table 1, but you delete the student ID in Table 1, Table 2 will not know which student the student ID corresponds to.

The tables in the database must comply with the specifications to prevent data redundancy, insertion anomalies, deletion anomalies and other phenomena. The canonical process is the process of decomposing the table. After decomposition, the representative attributes of a thing appear in different tables. Obviously, they should be consistent. For example, the representative data of a student is student number 012, which is 012 in the student table and should also be 012 in the grade table. This consistency is achieved by foreign keys. The function of a foreign key is: its value must be the primary key value of another table. The student number is the primary key in the student table and the foreign key in the grades table. The student number in the grade list must be the student number in the student list. Therefore, the student number in the student table and the student number in the grade table are consistent. It can be intuitively understood that the function of foreign keys is to achieve consistency of signs of the same thing in different tables. 2 Functional realization of two tables connected by foreign keys. When operated separately, the foreign key function is realized by two methods [4]: ​​

Prevent execution

●Insert a new row from the table. If the foreign key value is not the primary key value of the main table, the insertion will be blocked;

●Modify the foreign key value from the table. If the new value is not the primary key value of the main table, modification will be blocked;

 ●If a row is deleted from the master table, its primary key value will be prevented from being deleted if it exists in the slave table (if you want to delete it, you must first delete the relevant rows from the slave table);

 ●The master table modifies the primary key value, the old value will be prevented from being modified if it exists in the slave table (if you want to modify it, you must first delete the relevant rows from the slave table).

Cascade execution

●Delete rows from the main table, and delete related rows from the table together;

●Modify the primary key value from the main table, Modify the foreign key values ​​of related rows from the table together. Two methods are provided for users to choose. No matter which method is chosen, there will be no extra rows from the table. From another perspective, the same thing is achieved by rejecting the inconsistency between the flags in the slave table and the master table to achieve consistency with the flags in the master table.

 ●Two implementation methods, choose through the following methods:

Interface: Set up two selection boxes for cascade update and cascade delete. If selected, cascade execution will be performed, and if not selected, execution will be blocked. ;

Command: Let E)kSCM)E and RESTRICT be two optional options, CASCADE means cascade execution, and RESTRICT means prevent execution.

The above is the detailed content of How to view foreign keys in the table in navicat. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn