我正在为自己开发一个URL书签应用程序(PHP和MySQL)。使用此应用程序,我将在MySQL中存储URL。
问题是,我应该将URL存储在TEXT列中,还是应该首先解析URL并将其组件(主机,路径,查询,片段)存储在一个表的不同列中?后者也让我有机会通过分组服务器等来生成统计数据。或者我可能应该将服务器存储在一个单独的表中并使用JOIN。你觉得怎么样?
感谢。
答案 0 :(得分:5)
我要将它们存储在TEXT列中以启动。随着应用程序的增长,如果您真的想要,可以构建解析和分析功能。从它的声音来看,它现在只是天空中的功能。做你需要的东西,首先启动并运行基本应用程序,以便你可以使用它。你总是可以重构并从那里开始。
答案 1 :(得分:1)
答案取决于您将来如何使用此数据。 如果您想分析URL分割的不同部分,那么就可以了。
如果没有。如果将INSERT存储在一个字段中,INSERT以及SELECT也会更快。
如果你知道这些网址不长于255个字符,那么出于性能原因,varchar(255)会比文字更好。
答案 2 :(得分:0)
如果您认真地使用它来获取有趣的数据,那么请确保将其作为一系列列。老实说,我会说它可能只是作为一个单独的列更容易。
此外,请不要忘记,如果您以后想要来回转换很容易。单个到多个只是SELECT
;正则表达式; INSERT
[进入另一个表格];多个到单个只有一个INSERT SELECT
CONCAT
。