Zum Inhalt springen

Query was empty

Erstellt am 26. August 2008 · 1 Antwort · letzte Antwort am 27. August 2008

Tags: Frage

bagalude ·

Hi Forum,

ich bin derzeit dabei eine kleine Extension zu schreiben welche Daten aus xml in eine Tabelle schreibt. Dafür verwende ich beim ersten Mal ein insertQuery welches auch wunderbar seinen Job tut. Danach sollen vorhandene Datensätze nur noch erneuert werden, daher verwende ich dafür ein updateQuery welches mir aber irgendwie immer den Fehler "Query was empty" gibt. Leider kann ich mir das derzeit überhaupt nicht erklären, zumal das insert ja problemlos mit den selben Daten arbeitet. Hier mal das updateQuery und die debug Meldung:

						$GLOBALS['TYPO3_DB']->exec_UPDATEquery(
"tx_roster_chars",
"tx_roster_chars.name='".$insertArray[name]."'",
$insertArray
);
caller	t3lib_DB::exec_UPDATEquery

ERROR	Query was empty

lastBuiltQuery	

UPDATE tx_roster_chars
SET
name='dername',
gender='Male',
level='70',
race='Undead',
rank='0',
url='r=derserver=dername',
class='Mage'
WHERE
tx_roster_chars.name='dername'


debug_backtrace	tx_roster_chars_module1->main // tx_roster_chars_module1->moduleContent // tx_roster_chars_module1->updateData // tx_roster_chars_module1->writeCharInfos // tx_roster_chars_module1->writeData // t3lib_DB->exec_UPDATEquery // t3lib_DB->debug

Kennt jemand diesen Fehler und hat eine Lösung für mich? 🙂

Ach Ja, Typo3 4.1.5

bagalude ·

Ich habe den Grund für den Fehler zwar nicht gefunden, allerdings es geschafft diesen einigermaßen akzeptabel zu umgehen. Hierfür verwende ich den alternativen TYPO3_DB Aufruf und passe zuvor mein $insertArray an.

foreach ($insertArray as $key=>$value){
$updateArray[]= $key."='".$value."'";
}
$update = implode(",", $updateArray);
mysql(TYPO3_db,"UPDATE tx_roster_chars SET ".$update." WHERE tx_roster_chars.name='".$insertArray[name]."'");

So funktioniert es soweit problemlos. Allerdings würde mich immernoch interessieren wodurch der Fehler bei Verwendung von $GLOBALS['TYPO3_DB']->exec_UPDATEquery() verursacht wurde... #paralyzed#