/**
  * Removes existing relations from the mm table from the database
  */
 protected function deleteExistingRelations()
 {
     $deleteQuery = $this->typo3Db->DELETEquery($this->table, $this->uidLocalField . '=' . $this->localUid);
     $this->utilityFuncs->debugMessage('sql_request', array($deleteQuery));
     $deleteResult = $this->typo3Db->sql_query($deleteQuery);
     if (!$deleteResult) {
         $this->utilityFuncs->throwException('Error in SQL query for deleting existing relations: ' . $this->typo3Db->sql_error());
     }
 }
コード例 #2
0
ファイル: BasicDaoMapper.php プロジェクト: AndreasA/commerce
 /**
  * Db delete object
  *
  * @param int $uid Uid
  * @param Tx_Commerce_Dao_BasicDaoObject $object Object
  *
  * @return void
  */
 protected function dbDelete($uid, Tx_Commerce_Dao_BasicDaoObject &$object)
 {
     $dbWhere = 'uid = ' . (int) $uid;
     // execute query
     $this->database->exec_DELETEquery($this->dbTable, $dbWhere);
     // any errors
     $error = $this->database->sql_error();
     if (!empty($error)) {
         $this->addError(array($error, $this->database->DELETEquery($this->dbTable, $dbWhere)));
     }
     // remove object itself
     $object->destroy();
 }
コード例 #3
0
ファイル: Div.php プロジェクト: punktde/pt_extbase
 /**
  * Returns the last built SQL DELETE query with tabs removed.
  *
  * This function tries to retrieve the last built SQL DELETE query from the database object property $this->debug_lastBuiltQuery (works only since T3 3.8.0 with $GLOBALS['TYPO3_DB']->store_lastBuiltQuery = true). If this does not succeed, a fallback method is used (for former versions of class.\TYPO3\CMS\Core\Database\DatabaseConnection.php [TYPO3 3.6.0-3.8.0beta1] or $GLOBALS['TYPO3_DB']->store_lastBuiltQuery _not_ set to true) to retrieve the query string from \TYPO3\CMS\Core\Database\DatabaseConnection::DELETEquery() - as this is an overhead (\TYPO3\CMS\Core\Database\DatabaseConnection::DELETEquery() is called a second time after the call from \TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECT_query) IMO this should not be a permanent solution.
  *
  * @param   DatabaseConnection    TYPO3 database object (instance of \TYPO3\CMS\Core\Database\DatabaseConnection) used for last executed SQL query
  * @param   string      from clause/table name passed to last executed SQL query (see comment of \TYPO3\CMS\Core\Database\DatabaseConnection::exec_DELETEquery())
  * @param   string      where clause passed to last executed SQL query (see comment of \TYPO3\CMS\Core\Database\DatabaseConnection::exec_DELETEquery())
  * @return  string      last built SQL query with tabs removed
  * @see                 class.\TYPO3\CMS\Core\Database\DatabaseConnection.php, \TYPO3\CMS\Core\Database\DatabaseConnection::exec_DELETEquery()
  * @author  Rainer Kuhn 
  */
 public static function returnLastBuiltDeleteQuery(DatabaseConnection $dbObject, $from_table, $where_clause)
 {
     // try to get query from debug_lastBuiltQuery (works only for T3 3.8.0 with $GLOBALS['TYPO3_DB']->store_lastBuiltQuery = true)
     $query = $dbObject->debug_lastBuiltQuery;
     // fallback for former versions of class.\TYPO3\CMS\Core\Database\DatabaseConnection.php (TYPO3 3.6.0-3.8.0beta1) or $GLOBALS['TYPO3_DB']->store_lastBuiltQuery _not_ set to true
     if (strlen($query) < 1) {
         $query = $dbObject->DELETEquery($from_table, $where_clause);
     }
     // remove tabs and return query string
     return str_replace(chr(9), '', $query);
 }
コード例 #4
0
 /**
  * @test
  *
  * @return void
  */
 public function deleteQueryCreateValidQuery()
 {
     $queryExpected = "DELETE FROM {$this->testTable} WHERE id=1";
     $queryGenerated = $this->subject->DELETEquery($this->testTable, 'id=1');
     $this->assertSame($queryExpected, $queryGenerated);
 }