public static function setValue( $app, $key, $value ) {
// Does the key exist? yes: update. No: insert
if(! self::hasKey($app, $key)) {
- $query = OC_DB::prepare( 'INSERT INTO `*PREFIX*appconfig` ( `appid`, `configkey`, `configvalue` )'
- .' VALUES( ?, ?, ? )' );
- $query->execute( array( $app, $key, $value ));
+ OC_DB::executeAudited('
+ INSERT INTO `*PREFIX*appconfig` (
+ `appid`, `configkey`, `configvalue`
+ ) VALUES (
+ ?, ?, ?
+ )
+ ', array( $app, $key, $value )
+ );
}
else{
- $query = OC_DB::prepare( 'UPDATE `*PREFIX*appconfig` SET `configvalue` = ?'
- .' WHERE `appid` = ? AND `configkey` = ?' );
- $query->execute( array( $value, $app, $key ));
+ OC_DB::executeAudited('
+ UPDATE `*PREFIX*appconfig`
+ SET `configvalue` = ?
+ WHERE `appid` = ? AND `configkey` = ?
+ ', array( $value, $app, $key )
+ );
}
}
if ($stmt instanceof PDOStatementWrapper || $stmt instanceof MDB2_Statement_Common) {
/** @var $stmt PDOStatementWrapper|MDB2_Statement_Common */
$result = $stmt->execute($parameters);
- self::raiseExceptionOnError($result, 'Could not execute statement');
+ self::raiseExceptionOnError($result, 'Could not execute statement', $parameters);
} else {
if (is_object($stmt)) {
$message = 'Expected a prepared statement or array got ' . get_class($stmt);
file_put_contents( $file2, $content );
+ \OC_Log::write('db','creating table from schema: '.$content,\OC_Log::DEBUG);
+
// Try to create tables
$definition = self::$schema->parseDatabaseDefinitionFile( $file2 );
* @return void
* @throws DatabaseException
*/
- public static function raiseExceptionOnError($result, $message = null) {
+ public static function raiseExceptionOnError($result, $message = null, array $params = null) {
if(self::isError($result)) {
if ($message === null) {
$message = self::getErrorMessage($result);
} else {
$message .= ', Root cause:' . self::getErrorMessage($result);
}
+ if ($params) {
+ $message .= ', params: ' . json_encode($params);
+ }
throw new DatabaseException($message, self::getErrorCode($result));
}
}