Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在mysql中存储链接_Php_Mysql - Fatal编程技术网

Php 在mysql中存储链接

Php 在mysql中存储链接,php,mysql,Php,Mysql,我建立了一个博客网站,在那里作者的名字也是他们个人简历的链接。以前,每个博客条目在Blog_表中的一个单独的列中都有一个“author_link”,这很有效。然而,这是一种有效的方法吗?或者链接应该位于它们自己的关联表中,还是应该以我不熟悉的其他方式进行 我唯一熟悉的动态语言是PHP,因此任何需要了解其他知识的答案都可能超出我目前的能力,除非它非常简单。使用单独的表和联接 你所问的是所谓的正常化。这里有一个很好的问题: 本质上,它是以可查询的方式保存每一条数据的一个源。(至少我觉得这是最容易想到

我建立了一个博客网站,在那里作者的名字也是他们个人简历的链接。以前,每个博客条目在Blog_表中的一个单独的列中都有一个“author_link”,这很有效。然而,这是一种有效的方法吗?或者链接应该位于它们自己的关联表中,还是应该以我不熟悉的其他方式进行


我唯一熟悉的动态语言是PHP,因此任何需要了解其他知识的答案都可能超出我目前的能力,除非它非常简单。

使用单独的表和联接

你所问的是所谓的正常化。这里有一个很好的问题:

本质上,它是以可查询的方式保存每一条数据的一个源。(至少我觉得这是最容易想到的。)

有时值得对表进行非规范化处理(例如,当连接太昂贵时),但这些情况不是经常发生的,默认情况下应该进行规范化处理

连接并不太困难。在这种情况下,连接看起来(大致)如下:

SELECT a.author_link
FROM blog_table b
LEFT JOIN author_table a
ON b.author_id = a.author_id
WHERE ...
(假设两个中都有author_id列)


你对语言的选择并不重要;大多数流行语言都有mysql的连接器。因为您可能会使用PHP,所以请使用mysqli或PDO库(而不是旧的、不推荐使用的mysql库)。

如果您想保持它的简单性,请继续按照现在的方式进行。否则,您以后将不得不进行连接。就我个人而言,我还没有征服这些。如果任何作者只能有一个链接,那么我认为将此链接作为作者表中的字段将是最好的,因为这是作者的属性。如果作者可以有多个URL,那么您需要将作者与驻留在单独表中的URL关联起来。我同意Mike Brant的评论。把它放在作者的表格中,这样每当作者更新他们的bio链接时,所有动态博客条目页面都会自动用新链接更新。