本文整理汇总了PHP中TYPO3\CMS\Core\Database\DatabaseConnection::INSERTquery方法的典型用法代码示例。如果您正苦于以下问题:PHP DatabaseConnection::INSERTquery方法的具体用法?PHP DatabaseConnection::INSERTquery怎么用?PHP DatabaseConnection::INSERTquery使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Core\Database\DatabaseConnection
的用法示例。
在下文中一共展示了DatabaseConnection::INSERTquery方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: insertQueryCreateValidQueryFromMultipleValues
/**
* @test
*
* @return void
*/
public function insertQueryCreateValidQueryFromMultipleValues()
{
$this->subject = $this->getAccessibleMock(DatabaseConnection::class, ['fullQuoteStr'], [], '', false);
$this->subject->expects($this->any())->method('fullQuoteStr')->will($this->returnCallback(function ($data) {
return '\'' . (string) $data . '\'';
}));
$fieldValues = [$this->testField => 'Foo', $this->anotherTestField => 'Bar'];
$queryExpected = "INSERT INTO {$this->testTable} ({$this->testField},{$this->anotherTestField}) " . "VALUES ('Foo','Bar')";
$queryGenerated = $this->subject->INSERTquery($this->testTable, $fieldValues);
$this->assertSame($queryExpected, $queryGenerated);
}
示例2: dbInsert
/**
* Db add object
*
* @param Tx_Commerce_Dao_BasicDaoObject $object Object
*
* @return void
*/
protected function dbInsert(Tx_Commerce_Dao_BasicDaoObject &$object)
{
$dbTable = $this->dbTable;
$dbModel = $this->parser->parseObjectToModel($object);
// set pid
$this->parser->setPid($dbModel, $this->createPid);
// execute query
$this->database->exec_INSERTquery($dbTable, $dbModel);
// any errors
$error = $this->database->sql_error();
if (!empty($error)) {
$this->addError(array($error, $this->database->INSERTquery($dbTable, $dbModel), '$dbModel' => $dbModel));
}
// set object id
$object->setId($this->database->sql_insert_id());
}
示例3: returnLastBuiltInsertQuery
/**
* Returns the last built SQL INSERT query with tabs removed.
*
* This function tries to retrieve the last built SQL INSERT 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::INSERTquery() - as this is an overhead (\TYPO3\CMS\Core\Database\DatabaseConnection::INSERTquery() is called a second time after the call from \TYPO3\CMS\Core\Database\DatabaseConnection::exec_INSERT_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 table name passed to last executed SQL query (see comment of \TYPO3\CMS\Core\Database\DatabaseConnection::exec_INSERTquery())
* @param array array containing field/value-pairs passed to last executed SQL query (see comment of \TYPO3\CMS\Core\Database\DatabaseConnection::exec_INSERTquery())
* @return string last built SQL query with tabs removed
* @see class.\TYPO3\CMS\Core\Database\DatabaseConnection.php, \TYPO3\CMS\Core\Database\DatabaseConnection::exec_INSERTquery()
* @author Rainer Kuhn
*/
public static function returnLastBuiltInsertQuery(DatabaseConnection $dbObject, $table, $insertFieldsArr)
{
// 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->INSERTquery($table, $insertFieldsArr);
}
// remove tabs and return query string
return str_replace(chr(9), '', $query);
}