Zwei Probleme:
Ausgabe Nr. 1 :Verwenden Sie TEXT
nicht mehr - es ist veraltet. Verwenden Sie einen VARCHAR(n)
mit einer geeigneten Größe von n
, oder ob Sie wirklich müssen (nur wenn Sie WIRKLICH muss), verwenden Sie VARCHAR(MAX)
CREATE TABLE dbo.CONNECT_USER
(
NUM_TRF int,
NAME varchar(255),
DESCRIPTION varchar(1000),
REPORT varbinary(max)
)
Ich persönlich würde es auch vermeiden, ALLES IN GROSSBUCHSTABEN zu schreiben - das macht es nur so viel schwerer zu lesen! Und ich würde versuchen, sehr allgemein zu vermeiden Spaltennamen wie Name
oder Description
- Diese sind nicht sehr intuitiv und können mit den Spalten anderer Tabellen und / oder mit reservierten Schlüsselwörtern von SQL Server kollidieren. Versuchen Sie, ausdrucksstärker zu verwenden , mehr kontextbezogene Spaltennamen, die in Ihrer Umgebung sinnvoll sind (ConnectUsername
oder was auch immer)
Ausgabe Nr. 2 :bei einem INSERT
, würde ich immer empfehlen Definieren Sie die Spalte, in die Sie einfügen möchten. So vermeiden Sie unangenehme Überraschungen, wenn eine Tabelle umstrukturiert oder neue Spalten hinzugefügt werden:
INSERT INTO [MY_DB_APP].[dbo].[CONNECT_USER](NUM_TRF, NAME, DESCRIPTION, REPORT)
VALUES(1, 'name', 'description', CAST('wahid' AS VARBINARY(MAX)))
GO