Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 3258|Antwoord: 1

[Bron] MSSQL gebruikt nvarchar(max) en varbinary(max) om het verschil op te slaan

[Link kopiëren]
Geplaatst op 09-09-2023 09:36:22 | | | |
Eisen: Als er een veld in het project is dat geen where- en order-queries uitvoert, kan het worden opgeslagen met nvarchar(max) en varbinary(max) datatypes, en moet je rekening houden met opslaggrootte, querysnelheid en transmissiegrootte.

ntext, tekst en afbeelding

De ntext-, tekst- en afbeeldingsdatatypes zullen in toekomstige releases worden verwijderd. Vermijd het gebruik van deze datatypes in nieuwe ontwikkelingsprojecten en overweeg applicaties aan te passen die deze datatypes momenteel gebruiken.Gebruik in plaats daarvan nvarchar(max), varchar(max) en varbinary(max).

varbinair [ ( n | max ) ]

Variabele lengte binaire data. n heeft een waardebereik van 1 tot 8.000. Max geeft aan dat de maximale opslaggrootte 2^31-1 byte is. De opslaggrootte is de werkelijke lengte van de ingevoerde data + 2 bytes. De lengte van de ingevoerde data kan 0 bytes zijn. Het ANSI SQL-synoniem voor varbinary is binair varying.

Documentatie:De hyperlink-login is zichtbaar.

nvarchar [ ( n | max ) ]

Variabele grootte stringgegevens. n wordt gebruikt om de stringgrootte te definiëren (in dubbele bytes), en het kan een waarde zijn tussen 1 en 4.000. max geeft aan dat de maximale opslaggrootte 2^31-1 teken (2 GB) is. De opslaggrootte is twee keer zo groot als n bytes + 2 bytes. Voor UCS-2-codering is de opslaggrootte twee keer zo groot als n bytes + 2 bytes, en het aantal opgeslagen tekens is ook n. Voor UTF-16-codering is de opslaggrootte nog steeds twee keer zoveel bytes als n bytes + 2 bytes, maar het aantal opgeslagen tekens kan kleiner zijn dan n omdat aanvullende tekens twee dubbele bytes gebruiken (ook wel proxy-itemparen genoemd). ISO-synoniemen voor nvarchar variëren nationaal karakter en variëren in nationaal karakter.

Documentatie:De hyperlink-login is zichtbaar.

Nieuwe tabel

Databaseversie: Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) 24 sep 2019 13:48:23 Copyright (C) 2019 Microsoft Corporation Enterprise Edition (64-bit)

Maak twee nieuwe tabellen aan, de velden worden opgeslagen met nvarchar(max) en varbinary(max) datatypes, en het script is als volgt:

Maak een nieuwe consoleapplicatie aan op basis van .NET 6

Om een consoleapplicatie te maken, moet je Microsoft.Data.SqlClient raadplegen, de code is als volgt:

Afzonderlijk ingevoegdDezelfde 300.000 stuks data, de query is als volgt:



Controleer de bezette opslagruimte zoals weergegeven in de volgende figuur:



Dat zie jenvarchar(max) type32,555 MB, het varbinaire(max) type is bezet18,602 MB





Vorig:National Bank Xbox Series X ontgrendelde cross-region tutorial
Volgend:SQL Server zoekt naar gespecificeerde inhoud over alle opgeslagen procedures, functies en weergaven
 Huisbaas| Geplaatst op 09-09-2023 09:38:11 |
Het invoegen van 300.000 gegevensstukken, elk 1 seconde in beslag, is als volgt:



Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com