如何使用SQL查询获取drupal 7中节点的实际文件?

时间:2015-07-08 14:14:19

标签: mysql sql drupal drupal-7

我必须从drupal 7数据库中获取数据,但没有drupal环境,所以我不能使用默认的drupal类来获取它,只有SQL代码。

我想获取节点的文件,我写了这段代码:

SELECT 
    tny_t.uri as tny,
    tny_t.filename as tny_name,
FROM ".$type."
LEFT JOIN dr_node
    ON dr_node.nid= ".$type.".entity_id
LEFT JOIN dr_field_revision_field_teljes_tm_nynyilatkozat
    ON dr_field_revision_field_teljes_tm_nynyilatkozat.entity_id=".$type.".entity_id
LEFT JOIN dr_file_managed as tny_t
    ON tny_t.fid= dr_field_revision_field_teljes_tm_nynyilatkozat.field_teljes_tm_nynyilatkozat_fid
WHERE dr_node.nid = ".$nid."

它为我提供了文件,但并不总是好的文件,因为及时将较旧的文件替换为其他文件。我认为这给了我较旧的文件。

1 个答案:

答案 0 :(得分:0)

在您的情况下,您必须使用" file_usage"跟踪文件使用位置的表。 文件使用模式: enter image description here

因此,您可以使用此请求查看与特定节点相关的所有文件:

'SELECT * FROM file_usage fu 
LEFT JOIN file_managed fm ON fu.fid = fm.fid  
WHERE fu.type = "node"
AND fu.id ='. $nid
相关问题