Microsoft SQL SERVER richtiges query
Christian H.
- datenbank
0 Hopsel0 Christian H.0 Hopsel
Hallo und Grüße
Ich versuche gerade ein SQL Statement über das managementstudio express direkt an meien SQLEXPRESS Server loszuwerden dieser Lautet:
INSERT INTO [ebook].[dbo].[Benutzer]
([BenutzerID]
,[Anrede]
,[Titel]
,[Vorname]
,[Nachname]
,[Strasse]
,[Adresszusatz]
,[PLZ]
,[Ort]
,[Land]
,[Geburtstag]
,[eMail]
,[Passwort]
,[AGB]
,[Datenschutz]
,[RegisterID]
,[Angelegt]
,[Bestaetigt])
VALUES
(<BenutzerID, int,>
,<Anrede, varchar(50),>
,<Titel, varchar(50),>
,<Vorname, varchar(50),>
,<Nachname, varchar(50),>
,<Strasse, varchar(50),>
,<Adresszusatz, varchar(50),>
,<PLZ, varchar(50),>
,<Ort, varchar(50),>
,<Land, varchar(50),>
,<Geburtstag, datetime,>
,<eMail, varchar(255),>
,<Passwort, varchar(50),>
,<AGB, bit,>
,<Datenschutz, bit,>
,<RegisterID, varchar(50),>
,<Angelegt, datetime,>
,<Bestaetigt, datetime,>)
sorry ein wenig lang. Nun bekomme ich die Fehlermeldung
Meldung 102, Ebene 15, Status 1, Zeile 21
Falsche Syntax in der Nähe von '<'.
das ist gleich die Zeile unter Values.
Ich glaube ich sehe den Wald vor lauter Bäumen nicht.
Woran liegt der Fehler?
Grüße Christian
Hi Christian!
Ich glaube ich sehe den Wald vor lauter Bäumen nicht.
Woran liegt der Fehler?
Eine Benutzer-ID vom Typ int sollte eine Zahl sein.
Die Anrede vom Typ varchar(50) sollte ein String sein.
Der Titel vom Typ varchar(50) sollte ein String sein.
Soll ich weiter machen?
Möchtest du die Tabelle "Benutzer" erstellen oder in ihr einen Eintrag tätigen?
MfG H☼psel
Hi Christian!
»» Ich glaube ich sehe den Wald vor lauter Bäumen nicht.
»» Woran liegt der Fehler?
Eine Benutzer-ID vom Typ int sollte eine Zahl sein.
Die Anrede vom Typ varchar(50) sollte ein String sein.
Der Titel vom Typ varchar(50) sollte ein String sein.Soll ich weiter machen?
Möchtest du die Tabelle "Benutzer" erstellen oder in ihr einen Eintrag tätigen?
MfG H☼psel
Hallo Höpsel
Vielen Dank für das schnelle antworten.
einen eintrag tätigen..also die tabelle mit ihren spalten existiert schon.
das mit den Formaten ist mir bewußt.
Die Values zeilen müßten dann wie folgt aussehen oder? ( ' oder " ??)
(<'123', int,>
,<'Herr', varchar(50),>
,<'testtitel', varchar(50),>
Grüße Christian
Hi Christian!
Hallo Höpsel
Hopsel! =)
Die Values zeilen müßten dann wie folgt aussehen oder?
(<'123', int,>
,<'Herr', varchar(50),>
,<'testtitel', varchar(50),>
Nein.
Wieso möchtest du den Wertebereich noch einmal angeben, wenn die Tabelle schon existiert? Und woher hast du überhaupt diese Syntax?
Richtig wäre:
~~~sql
(123
,'Herr'
,'testtitel'
' oder " ?
Strings werden bei MSSQL mit dem einfachen Anführungszeichen gekennzeichnet. Inwiefern doppelte unterstützt werden, musst du austesten.
MfG H☼psel
Hallo,
Strings werden bei MSSQL mit dem einfachen Anführungszeichen gekennzeichnet. Inwiefern doppelte unterstützt werden, musst du austesten.
das hängt von der Einstellung QUOTED_IDENTIFIER ab.
In der Standardeinstellung
SET QUOTED_IDENTIFIER ON
können nur einfache Anführungszeichen verwendet werden. Bei
SET QUOTED_IDENTIFIER OFF
können auch doppelte Anführungszeichen zum Begrenzen von Zeichenketten verwendet werden.
Freundliche Grüße
Vinzenz
Hallo,
»» Strings werden bei MSSQL mit dem einfachen Anführungszeichen gekennzeichnet. Inwiefern doppelte unterstützt werden, musst du austesten.
das hängt von der Einstellung QUOTED_IDENTIFIER ab.
In der Standardeinstellung
SET QUOTED_IDENTIFIER ON
können nur einfache Anführungszeichen verwendet werden. Bei
SET QUOTED_IDENTIFIER OFF
können auch doppelte Anführungszeichen zum Begrenzen von Zeichenketten verwendet werden.
Freundliche Grüße
Vinzenz
Ah was ich da hatte war wohl die Struktur der Datenbank. Mich düngt ich muß mich wohl etwas mit sql beschäftigen. Trotzdem vielen Dank für eure Hilfe.
einfache anführungszeichen waren es gewesen.
Grüße Christian