sql >> Database teknologi >  >> RDS >> Sqlserver

Indsæt varbinære data i SQL Server-databasen

To problemer:

Udgave #1 :brug ikke TEXT længere - det er forældet. Brug en VARCHAR(n) med en passende størrelse på n , eller hvis du virkelig skal (kun hvis du RIGTIG skal), brug VARCHAR(MAX)

CREATE TABLE dbo.CONNECT_USER
(
    NUM_TRF int,
    NAME varchar(255),
    DESCRIPTION varchar(1000),
    REPORT varbinary(max)
)

Jeg ville personligt også undgå at skrive ALT MED ALT – det gør det bare så meget sværere at læse! Og jeg ville forsøge at undgå meget generisk kolonnenavne som Name eller Description - disse er ikke særlig intuitive og kan kollidere med andre tabels kolonner og/eller med reserverede søgeord i SQL Server. Prøv at bruge mere udtryksfuldt , mere kontekstrelaterede kolonnenavne, der giver mening i dit miljø (ConnectUsername eller hvad som helst)

Udgave #2 :når du laver en INSERT , vil jeg anbefale altid definere den kolonne, du vil indsætte i. Dette undgår ubehagelige overraskelser, når en tabel omstruktureres eller nye kolonner tilføjes:

INSERT INTO [MY_DB_APP].[dbo].[CONNECT_USER](NUM_TRF, NAME, DESCRIPTION, REPORT)
VALUES(1, 'name', 'description', CAST('wahid' AS VARBINARY(MAX)))
GO



  1. Magento:Opret automatisk CSV-fil for hver afgivet ordre

  2. mysql opdatering med regexp

  3. Er der nogen gode PostgreSQL-klienter til linux?

  4. Når autovakuum ikke støvsuger