PDO:检查db中的标签,然后插入

时间:2010-01-27 21:17:32

标签: php mysql tags pdo

我正在使用PDO的{​​{1}}连接,我想对我用来检查数据库中是否存在mysql的查询有一些看法,并且如果不是,请添加它。

tags

我不熟悉数据库,所以我不确定查询是否投影得很好

2 个答案:

答案 0 :(得分:1)

我会稍微调整您的选择查询,以进行优化:

SELECT 1 AS found FROM tags WHERE tag_name = :tag_name LIMIT 1

SELECT *将更多数据(匹配记录中的所有字段)从数据库传输到您的应用程序。只选择你需要的字段会更有效率,在这种情况下看起来你只是检查存在,所以你不需要任何记录数据,因此SELECT 1。

LIMIT 1将查询结果限制为一条记录,而不是所有匹配的记录。更快的查询执行和更少的数据传输。

答案 1 :(得分:0)

一些更脏的MySQL特定选项包括简单地使用REPLACE INTO(不)或IGNORE关键字与INSERT(建议)结合使用。 INSERT IGNORE语法比单独执行SELECT稍快一些。