sql中啥叫主键表,啥叫外键表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql中啥叫主键表,啥叫外键表相关的知识,希望对你有一定的参考价值。

主键表和外建表是相对来说的,简单的说就是一个表的主键是另外一张表的外键。
例如
class
班级表
主要字段如下:
classId
PRIMARY
KEY(主键)班级ID
className
班级名称
studen
学生表
主要字段如下
stuId
PRIMARY
KEY(主键)学生id
stuName
学生姓名
classId
FOREIGN
KEY(外建)所属班级id
class表中的主键classId
是student表中的外建则认为class为主键表
student为外键表
参考技术A 你说的是表的主键和外键吧,主键和外键是个相对的概念,一张表中,每行都不重复的那一列一半作为主键存储。例如表A的a字段是A表的主键,B表中也有a字段,则B表的a字段称为A表中a字段的外键。 参考技术B 举例来说明,你可能更容易接受
省表有字段id
name,id设置为主键就是说是唯一
如果城市表的pid是省表的id,那么城市表里的pid就是省表的外键

一般来说主键对应一个或多个外键。

SQL怎么在有外键的主键表中插数据

参考技术A

1、创建表TEST_KEY_F,并添加主键。

-- Create table

create table TEST_KEY_F(class_id   NUMBER , class_name VARCHAR2(20));

alter table TEST_KEY_F add constraint P_KEY_2 primary key (CLASS_ID);

2、创建TEST_KEY_P表,并引用TEST_KEY_F表的class_id键为外键,

create table TEST_KEY_P( id       NUMBER,class_id NUMBER);

alter table TEST_KEY_P add constraint F_KEY2 foreign key (CLASS_ID)

  references TEST_KEY_F (CLASS_ID);

3、先在被关联的外键表中插入数据;

insert into TEST_KEY_F values(1001, '班1');

insert into TEST_KEY_F values(1002, '班2');

insert into TEST_KEY_F values(1003, '班3');


4、再往有外键的主键表TEST_KEY_P中插入记录;可以发现数据已插入成功。

insert into TEST_KEY_P values(1,1001);

insert into TEST_KEY_P values(2,1001);

insert into TEST_KEY_P values(3,1002);

insert into TEST_KEY_P values(4,1002);

commit;

以上是关于sql中啥叫主键表,啥叫外键表的主要内容,如果未能解决你的问题,请参考以下文章

SQL中有主外键的两表到底那这是主表

SQL怎么在有外键的主键表中插数据

SQL怎么在有外键的主键表中插数据

关于 主键和外键

利用PHP脚本辅助MySQL数据库管理2-表主键表索引

SQL的主键和外键的作用