ARC2_StoreDeleteQueryHandler::cleanValueTables PHP Method

cleanValueTables() public method

*
public cleanValueTables ( )
    function cleanValueTables()
    {
        /* lock */
        if (!$this->store->getLock()) {
            return $this->addError('Could not get lock in "cleanValueTables"');
        }
        $con = $this->store->getDBCon();
        $tbl_prefix = $this->store->getTablePrefix();
        $dbv = $this->store->getDBVersion();
        /* o2val */
        $sql = $dbv < '04-01' ? 'DELETE ' . $tbl_prefix . 'o2val' : 'DELETE V';
        $sql .= '
      FROM ' . $tbl_prefix . 'o2val V 
      LEFT JOIN ' . $tbl_prefix . 'triple T ON (T.o = V.id)
      WHERE T.t IS NULL
    ';
        mysqli_query($con, $sql);
        /* s2val */
        $sql = $dbv < '04-01' ? 'DELETE ' . $tbl_prefix . 's2val' : 'DELETE V';
        $sql .= '
      FROM ' . $tbl_prefix . 's2val V 
      LEFT JOIN ' . $tbl_prefix . 'triple T ON (T.s = V.id)
      WHERE T.t IS NULL
    ';
        mysqli_query($con, $sql);
        /* id2val */
        $sql = $dbv < '04-01' ? 'DELETE ' . $tbl_prefix . 'id2val' : 'DELETE V';
        $sql .= '
      FROM ' . $tbl_prefix . 'id2val V 
      LEFT JOIN ' . $tbl_prefix . 'g2t G ON (G.g = V.id)
      LEFT JOIN ' . $tbl_prefix . 'triple T1 ON (T1.p = V.id)
      LEFT JOIN ' . $tbl_prefix . 'triple T2 ON (T2.o_lang_dt = V.id)
      WHERE G.g IS NULL AND T1.t IS NULL AND T2.t IS NULL
    ';
        //mysql_query($sql, $con);
        /* release lock */
        $this->store->releaseLock();
    }