Dva problémy:
Problém č. 1 :nepoužívejte TEXT
již - je zastaralá. Použijte VARCHAR(n)
s vhodnou velikostí n
, nebo pokud opravdu musíte (pouze pokud OPRAVDU must), použijte VARCHAR(MAX)
CREATE TABLE dbo.CONNECT_USER
(
NUM_TRF int,
NAME varchar(255),
DESCRIPTION varchar(1000),
REPORT varbinary(max)
)
Osobně bych se také vyvaroval psaní VŠECH VELKÝMI PÍSMENY - díky tomu je to mnohem těžší číst! A snažil bych se vyhnout velmi obecným názvy sloupců jako Name
nebo Description
- nejsou příliš intuitivní a mohou kolidovat se sloupci jiné tabulky a/nebo s vyhrazenými klíčovými slovy SQL Serveru. Zkuste použít výraznější , názvy sloupců více související s kontextem, které dávají smysl ve vašem prostředí (ConnectUsername
nebo cokoliv)
Problém č. 2 :při provádění INSERT
, doporučuji vždy definujte sloupec, do kterého chcete vložit. Vyhnete se tak nepříjemným překvapením při restrukturalizaci tabulky nebo přidání nových sloupců:
INSERT INTO [MY_DB_APP].[dbo].[CONNECT_USER](NUM_TRF, NAME, DESCRIPTION, REPORT)
VALUES(1, 'name', 'description', CAST('wahid' AS VARBINARY(MAX)))
GO