php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.09.2005, 13:28  
Gast
 
Beiträge: n/a
Standard Problem bei Update

Hallo!

Ich hab da ein Problem bei einer Update-Anweisung meines Scripts, wenn zB. folgendes Update durchgeführt werden soll:
Code:
UPDATE vkstamm SET (HAUSHALT = 430123485, TITEL1 = 'Herr', TITEL2 = 'Mag', GESCHLECHT = 'M', FAMNAME = 'Maier', VORNAME = 'Martin', VORNAME2 = 'Ludwig', NAME2A = 'nein', NATION = 'AT', TELEFON_2 = '', TELEFON_MOBIL = '0658 / 3490497', FAX = '') WHERE IDENT = 430123485
kommt dieser Fehler:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(HAUSHALT = 430123485, TITEL1 = 'Herr', TITEL2 = 'Mag.', GESCHLE

Was bedeutet das, bzw wie kann ich den Fehler beheben?

DANKE IM VORRAUS FÜR ANTWORTEN!
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.09.2005, 13:32  
Gast
 
Beiträge: n/a
Standard

mach mal die () weg
 
Alt 13.09.2005, 13:44  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sascha
mach mal die () weg
Dann wird keine Fehlermeldung mehr angezeigt, die Query funktioniert dann aber weiterhin nicht!

@seeker:
Versuch mal:
Code:
UPDATE vkstamm SET HAUSHALT = '430123485', TITEL1 = 'Herr', TITEL2 = 'Mag', GESCHLECHT = 'M', FAMNAME = 'Maier', VORNAME = 'Martin', VORNAME2 = 'Ludwig', NAME2A = 'nein', NATION = 'AT', TELEFON_2 = '', TELEFON_MOBIL = '0658 / 3490497', FAX = '' WHERE IDENT = '430123485'
Corvin ist offline  
Alt 13.09.2005, 13:51  
Gast
 
Beiträge: n/a
Standard



*hüstl*
 
Alt 13.09.2005, 13:56  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Ooops
*klick* ich dachte, dass du die() meinst
Corvin ist offline  
Alt 13.09.2005, 13:59  
Gast
 
Beiträge: n/a
Standard

Danke für die schnellen Antworten!

Die () waren die Ursache!

Nun hab ich aber noch ein weiteres Problem, das Update schicke ich ja mit dieser Funktion:
PHP-Code:
<?php
mysql_db_query
()
?>
Bei mir sieht das dann so aus:
PHP-Code:
<?php
$select_db 
mysql_select_db($MYSQL_db);
$update_01 "UPDATE $tb_name_03 SET HAUSHALT = $neue_ID, TITEL1 = '$TITEL1', TITEL2 = '$TITEL2',  GESCHLECHT = '$GESCHLECHT', FAMNAME = '$FAMNAME', VORNAME = '$VORNAME', VORNAME2 = '$VORNAME2', NAME2A = '$NAME2A', NATION = '$NATION', TELEFON_2 = '$TELEFON_2', TELEFON_MOBIL = '$TELEFON_MOBIL', FAX = '$FAX' WHERE IDENT = $neue_ID";

mysql_db_query($select_db$update_02);
?>
Nun krieg ich wieder eine Fehlermeldung, nämlich diese:
No database selected

Meine Frage also: Was stimmt an meinem 1. Parameter nicht?
 
Alt 13.09.2005, 14:19  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Ein Blick ins Manual kann nie schaden
Zitat:
resource mysql_db_query ( string Datenbank, string Anfrage [, resource Verbindungs-Kennung] )
Du musst das also so schreiben:
PHP-Code:
<?php
mysql_db_query
($MYSQL_db$update_02); 
?>
oder so:
PHP-Code:
<?php
mysql_query
($update_02); 
?>
Corvin ist offline  
Alt 13.09.2005, 14:37  
Gast
 
Beiträge: n/a
Standard

Falls du dieses Manual meinst

http://de3.php.net/manual/de/function.mysql-query.php

das hab ich gelesen, hat mir aber nicht viel geholfen, weil ich auch dachte, dass ich einfach nur $MYSQL_db einsetzen müsste, aber dem ist leider nicht so, es kommt dann nämlich diese Fehlermeldung (warum auch immer):

No database selected

bei
PHP-Code:
mysql_query(); 
bekomm ich zwar eine positive Rückmeldung (1) aber das update wird nicht durchgeführt.
Weiß jemand woran das liegen kann?
 
Alt 13.09.2005, 15:06  
Gast
 
Beiträge: n/a
Standard

Wenn Du vorher irgendwann mysql_select_db() gemacht hast, kannst Du direkt mit mysql_query() arbeiten.

Eine positive Rückmeldung bekommst Du immer, wenn die Anfrage syntaktisch richtig war. Ein UPDATE, das keine Zeilen aktualisiert, weil es keine passenden gibt, ist auch erfolgreich durchgeführt!

Hast Du die Abfrage schonmal händisch überprüft? Vielleicht gibts die ID einfach nicht und darum wird auch nichts geupdated. mysql_affected_rows() gibt Dir die Anzahl der veränderten Zeilen zurück.
 
Alt 13.09.2005, 15:09  
Gast
 
Beiträge: n/a
Standard

Bitte mysql_select_db() benutzen.
Macht das Ganze übersichtlicher, weil weniger Code.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit Update taucher PHP Tipps 2008 6 01.07.2008 05:50
update sql anweisung - problem Mach!N3 PHP Tipps 2006 6 09.09.2006 18:44
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
db update problem annaloga PHP Tipps 2006 4 11.06.2006 22:25
datenbank update via install.php problem annaloga Datenbanken 6 31.05.2006 10:59
Update Befehl Problem! Datenbanken 9 16.08.2005 18:01
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
[Erledigt] Problem mit User/Group: nobody(99)/99 Server, Hosting und Workstations 3 09.07.2005 15:31
problem mit UPDATE query nautiluS Datenbanken 4 17.03.2005 10:22
[Erledigt] Problem mit UPDATE Datenbanken 3 22.02.2005 17:47
Update Problem beim zurück schreiben... PHP Tipps 2005 3 09.02.2005 12:50
[Erledigt] Hilfe - Problem mit Warenkorb PHP Tipps 2004 1 26.11.2004 11:32
php update PHP Tipps 2004 2 24.09.2004 01:07
[Erledigt] UPDATE Syntax problem Datenbanken 6 17.08.2004 16:18
mysql !!! Update problem!!! PHP Tipps 2004 2 18.07.2004 20:41


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.