2017-04-26 7 views
-2

Ich versuche, diese Abfrage auszuführen, aber ich bekomme einen Fehler.Fehler beim Einfügen von Datensatz in SQL Server

INSERT INTO [dbo].[User] 
     ([User_Name] 
     ,[User_type] 
     ,[Is_deleted] 
     ,[User_Password]) 
VALUES 
     (admin, varchar(30), 
     ,Admin, varchar(10), 
     ,False, bit, 
     ,admin, varchar(10),) 

Erro Nachricht:

Msg 195, Level 15, State 10, Line 10 
'varchar' is not a recognized built-in function name. 
+2

Nun, es wirft einen Fehler, weil der Code nicht wirklich Sinn macht. Was willst du machen? – Lamak

+0

Sie geben keine Datentypen für die Werte an, die Sie an die INSERT-Anweisung senden. Stattdessen müssen Sie nur die korrekt abgegrenzten Daten übermitteln. Die Informationen in Ihrer VALUES-Anweisung sollten wie folgt aussehen: '('admin' , 'Admin' , 0/* False kann in einigen Konfigurationen funktionieren, aber nicht immer */ , 'admin')' –

+0

Es sieht so aus, als ob du es benutzt hast Eine Vorlage für eine INSERT-Anweisung, die die Datentypen für die Werte enthielt. Das sind lediglich informative, nicht wirklich benötigte Daten, weshalb in den meisten Templates die Informationen im Template-Code auskommentiert sind. –

Antwort

0

Ziemlich sicher, dass Sie sich für so etwas wie.

INSERT INTO [dbo].[User] 
     ([User_Name] 
     ,[User_type] 
     ,[Is_deleted] 
     ,[User_Password]) 
VALUES 
     ('admin' 
     , 'Admin' 
     , 0 
     , 'admin' 
    ) 

Allerdings sind hier VIELE Probleme sichtbar. Zuallererst sollten Sie NIE Passwörter im Klartext speichern. Sie sollten gesalzen und gehackt werden. Sie sollten auch eine Nachschlagetabelle mit UserTypes haben und die Daten in der User-Tabelle würden einen Fremdschlüssel für die andere Tabelle haben.

Verwandte Themen