将网页存储在数据库中是否合适? 我使用的是mysql的InnoDB引擎,电子邮件模板是一个邮件格式的修改后的html文件,所以应该有一个简单的html文件。
请注意,这些模板不是每个人都可以访问的,它们应该引用userID,例如,用户A有template1,2,3 ..但是UserB可能有模板2,3,5,6 ..
我应该存储这种文件的数据类型是什么?
或者不是使用数据库,我应该创建一个html文件并使用php写入并为每个用户打开一个文件夹?
感谢您的帮助,我在处理此类数据方面经验不足
答案 0 :(得分:3)
通常,对于大多数项目来说,数据库是瓶颈。因此,如果您可以避免使用它,那么请不要使用它。 如果html很小(例如10kb),那么您可以存储在数据库中。 但是,如果它很大(并且需要BLOB或大varchar),则使用注册表的唯一ID将其保存在文件夹中,并注意可能存在的模板数量。但是,系统备份还需要备份这些文件(而不是数据库的单个备份)。
用户A具有template1,2,3 ..但UserB可能具有模板2,3,5,6 ..
听起来像是
Id_User Name_User ...
Id_Template Name_Template Content_Template(如果它不是由文件管理) ....
Id_User Id_Template
用户获取所有模板
select * from User a,Template b,UserxTemplate c
where c.id_user=a.id_user and c.id_template=b.id_template and a.id_user=xxx
简历
存储在数据库中
临:
缺点:
存储在文件中
临:
缺点:
ps:Wordpress和其他门户和博客系统(通常)将其存储在数据库中,但LMS(学习管理系统)存储在文件中。
答案 1 :(得分:0)
我会选择名为行主键的文件。它更容易编辑,颠覆等。
您可以使用.htaccess Deny from All
保护存储文件夹,并使用PHP的file_exists()
来确定。它每次调用<0,5ms,比从数据库中检索BLOB便宜。
答案 2 :(得分:0)
使用SQL Server,您可以存储最多2147483647个字符