was ist an diesem query falsch?
ichen
- datenbank
0 Viennamade0 Götz0 Rouven
0 Ludger Keitlinghaus0 Christian Kruse0 Martin
Moin!
hier mein query, den mysql immer rausschmeißt:
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,Quittung drucken) values ('',1,'teamname','','','','');";
fehlermeldung:
#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 '- Nr, Kategorie, MannschaftsName, Unvollständig, Regelwiedrig,
danke für antworten
tschüss
ichen
Hallo!
fehlermeldung:
#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 '- Nr, Kategorie, MannschaftsName, Unvollständig, Regelwiedrig,
Also wenn das die ganze Fehlermeldung ist, dann schaut das doch sehr danach aus, daß MySQL auf den Bindestrich nicht sonderleich heiß ist.
Beste Grüße
Viennamade
Hallo ichen!
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,Quittung drucken) values ('',1,'teamname','','','','');";
fehlermeldung:
#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 '- Nr, Kategorie, MannschaftsName, Unvollständig, Regelwiedrig,
1. Ist "-" in Feldnamen erlaubt?
2. Ist "ä" in Feldnamen erlaubt?
3. Ein kleiner Rechtschreibfehler: Es sollte wohl regelwidrig heißen.
(Laut http://dev.mysql.com/doc/mysql/en/Legal_names.html ist in Feldnamen jedes Zeichen erlaubt. Doch grundsätzlich wär ich mit Umlauten vorsichtig.)
MfG
Götz
Tag,
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,Quittung drucken) values ('',1,'teamname','','','','');";
ich hätte auch das Leerzeichen noch weggelassen, ziemlich gewagt...
MfG
Rouven
Hi,
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,Quittung drucken) values ('',1,'teamname','','','','');";
es wird wohl das Minuszeichen sein, aber zu den verwendeten Namen:
mannschaft besser: Manschaften
Mannschaft-Nr, wenn die Tabelle 'mannschaft' heisst, wird hier keine Praefix benoetigt, waere redundant
Kategorie,
MannschaftsName, s.o.
Unvollständig, besser: Ist_Unvollstaendig_Erfasst (Boolean?)
Regelwiedrig, besser: Ist_Regelwidrig (Boolean?)
Mannschaftsleiter, s.o.
Quittung drucken besser: Ist_Quittung_Gedruckt (Boolean?)
Gruss,
Ludger
yo,
Mannschaft-Nr, wenn die Tabelle 'mannschaft' heisst, wird hier keine Praefix benoetigt, waere redundant
bezogen auf eine tabelle magst du dabei recht haben. aber wenn mehrere tabellen in einer abfrage vorkommen, dann macht ein praefix durchaus sinn, um nicht mehrmals den gleichen spaltennamen zu bekommen. sicherlich kann man dann einen alias benutzen, aber der praefix dient der besseren übersichlichkeit.
Ilja
Hi,
Mannschaft-Nr, wenn die Tabelle 'mannschaft' heisst, wird hier keine Praefix benoetigt, waere redundant
bezogen auf eine tabelle magst du dabei recht haben. aber wenn mehrere tabellen in einer abfrage vorkommen, dann macht ein praefix durchaus sinn, um nicht mehrmals den gleichen spaltennamen zu bekommen. sicherlich kann man dann einen alias benutzen, aber der praefix dient der besseren übersichlichkeit.
richtig, auch weil es dann DB-weit eindeutige Datenfeldnamen gibt zum Beispiel. Das ist dann ja ganz nett.
Dennoch gibt es auch gegen diese Argumentation zwei mir bekannte Einwaende:
1.) Man muss zuviel schreiben => also z.B. die Praefix 'MS_' statt 'Mannschaft_' verwenden
2.) Manche meinen wirklich, dass man kine Praefices auf DF-Ebene nutzen sollte, denn wenn geJOINt wird kommt man mit Tabellen-Aliasen und hat dann sowas wie 'MS.Nummer' statt 'MS_Nummer'
Wer hier Recht hat weiss ich nicht beurteilen. Ich arbeite zurzeit allerdings meist noch mit Praefices, manchmal sogar mit den (wie von Dir vorgeschlagen) Vollausgeschriebenen.
Es waren schon einige Sachen 'an diesem query falsch'. ;-)
Gruss,
Ludger
Hallo ichen,
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,
MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,
Quittung drucken) values ('',1,'teamname','','','','');";
Du musst die Feldnamen, die etwas »aussergewoehnlicher« benamst
sind, quoten:
INSERT INTO mannschaft (
Mannschaft-Nr
,
Kategorie,
MannschaftsName,
Unvollständig,
Regelwiedrig,
Mannschaftsleiter,
Quittung drucken
)
VALUES (
'',
1,
'teamname',
'',
'',
'',
''
);
Grüße,
CK
Hallo.
$sql = "Insert into mannschaft (Mannschaft-Nr,Kategorie,MannschaftsName,Unvollständig,Regelwiedrig,Mannschaftsleiter,Quittung drucken) values ('',1,'teamname','','','','');";
Kann es schlicht sein, dass Du den ";" am Ende weglassen musst, wenn Du das SQL Statement in einer "Scriptingumgebung" benutzt, d.h. nicht direkt an der DB Konsole arbeitest?
Orcale ist da ziemlich häßlich: bei SQLPlus (Konsole) muss man den Strichpunkt angeben, bei der Verwendung via JDBC (z.B. innerhalb von SQuirreL oder XSLT) darf der Strichpunkt nicht verwendet werden.
Sach bescheid, an was es lag.
Interessierte Grüße
Martin.