php SQL数据库

php SQL数据库,php,phpmyadmin,Php,Phpmyadmin,我有一个create数据库,数据库中有大约8个表,并且在适当的表中创建了主键和外键。但当我在主表中插入数据时,我的另一个表不会显示更新的数据 我的意思是,假设我有一个表,其中包含了如下名称的数据:; N是名字 N1=George,N2=Ross,N3=Rim…等等,这意味着我有主键N1,N2,N3等等 现在,当我在others表中插入这个主键时,它应该显示我的名字,比如George,ross和rim,而不是主键号它selfN1,N2,N3 我如何才能获得名称而不是PK本身?您误解了关系数据库中键

我有一个create数据库,数据库中有大约8个表,并且在适当的表中创建了主键和外键。但当我在主表中插入数据时,我的另一个表不会显示更新的数据

我的意思是,假设我有一个表,其中包含了如下名称的数据:; N是名字 N1=George,N2=Ross,N3=Rim…等等,这意味着我有主键N1,N2,N3等等

现在,当我在others表中插入这个主键时,它应该显示我的名字,比如George,ross和rim,而不是主键号它selfN1,N2,N3


我如何才能获得名称而不是PK本身?

您误解了关系数据库中键的概念。键的作用不是复制相似表中的数据,而是显示不同表中数据之间的关系。它们有助于理解不同表之间的数据是如何关联的——这就是关系数据库的名称来源。如果建立索引,它们还可以加快对该数据的查询


您可以在此处阅读有关密钥使用的更多信息:

我还不清楚您到底想对数据库做什么。但是,让我向您演示数据库的基本原理以及应该如何使用它。考虑一个表用户,您将存储与用户相关的数据。

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `email` varchar(50) DEFAULT NULL,
  `phone` varchar(30) DEFAULT NULL,
  PRIMARY KEY (`id`),
);
列id持有主键并具有一个名为auto_increment的属性,这意味着每次向该表插入记录时,id属性都会递增,您不必担心在该列中插入任何值,因为您的数据库会处理这个问题。例如,看看下面的插入查询

INSERT INTO users(name,email,phone) VALUES('First Name', 'first@domain.com', '9999999999');
INSERT INTO users(name,email,phone) VALUES('Second Name', 'second@domain.com', '8888888888');
INSERT INTO users(name,email,phone) VALUES('Third Name', 'third@domain.com', '2222222222');
INSERT INTO users(name,email,phone) VALUES('Fourth Name', 'fourth@domain.com', '3333333333');
你看到没有在这里插入任何id吗。这是因为处理逻辑的是数据库。现在第一条记录将保存值1,第二条记录将保存值2,第三条记录3,第四条记录4,依此类推


希望这对你有帮助

所以你需要交叉引用两个表?您可以将两个表连接在一起,然后通过这种方式获得所需的所有信息,但需要比现有信息多一点关于您的设计的信息。我假设您使用的是MySQL?我认为在使用数据库之前,最好先阅读关系数据库和规范化的相关知识,以了解相关理论。