Denne artikkelen utforsker Konfigurasjonen Av Azure SQL Database-Sortering og hvordan du endrer den mens du importerer databasen fra EN BACPAC-fil.
Introduksjon
sorteringen refererer til en konfigurasjon som bestemmer databasemotorens virkemåte for tegndatasett på server -, database-eller kolonnenivå. SQL Server har et bredt spekter av sorteringer for håndtering av språkforskjeller i ulike deler av verden. Det gir sorteringsregler, saksfølsomhet For Unicode – datatyper (nchar, nvarchar eller ntext) og ikke-Unicode (char, varchar, nvarchar).
SQL Server støtter følgende sorteringer.
- Windows
- Binær: den binære sorteringen slutter alltid MED ENTEN _BIN eller _BIN2
- SQL Server: disse sorteringsnavnene starter alltid MED SQL_
for en tradisjonell (lokal) SQL-Server bestemmer operativsystemets nasjonale innstilling standard sortering. Du kan imidlertid endre sortering på servernivå under SQL Server-installasjonen eller endre OS-nasjonale innstillinger. Standard sql Server sortering Er SQL_Latin1_General_CP1_CI_AS. Du kan forstå disse sorteringene i detalj ved å henvise Til Sortering og Unicode-støtte.
Krav
denne artikkelen forutsetter at du har en grunnleggende forståelse Av Azure SQL-Databaser. Hvis du er nybegynner, kan du se eksisterende artikler SQL Azure På SQLShack. Du kan bruke Microsoft Azure gratis kreditt ved å registrere DEG på URL https://azure.microsoft.com/en-us/free/
Azure SQL Database Collation
Azure SQL DB er et administrert PaaS-tilbud FOR SQL Server med visse begrensninger og begrensninger for å utføre bestemte oppgaver. Som lokal SQL Server støtter Azure DB også ulike sorteringer. For å få en liste over støttede sorteringer For Azure SQL DB, kan vi spørre sys.fn_helpcollations () – funksjonen. Den returnerer en liste over 5,508 sorteringer. Figuren nedenfor gir deg et glimt av sortering og beskrivelser.
For Azure SQL DB kan du velge databasesortering i kategorien tilleggsinnstillinger for å opprette SQL Database. Som vist nedenfor vises standard sortering Som SQL_Latin1_General_CP1_CI_AS.
Vi kan bryte ned denne sorteringen for å forstå den.
- SQL – IT refererer til AT DET er EN SQL Server-sortering
- Latin1_General – denne delen definerer tegnsorteringsregelen
- CI-det refererer til små og store bokstaver
- SOM-It definerer aksensensitivitet
du kan klikke på finn en sortering og se etter den spesifikke sorteringen du vil konfigurere For Azure DB.
du kan distribuere En Azure-database på en eksisterende azure logical server. Hvis du oppretter En Ny Azure-database ved HJELP AV SSMS, kan du derfor definere en bestemt sortering ved hjelp av alternativer-siden.
hvis du oppretter En Azure SQL DB ved HJELP AV T-SQL, kan du bruke SORTERINGS-nøkkelordet og angi ØNSKET DB-sortering.
1
2
3
|
OPPRETT DATABASE MyDemoSQLDB
SORTER Latin1_General_100_CS_AS_SC;
GÅ
|
du må opprette databasen i riktig sortering. SQL-spørringer kan ikke fungere riktig på grunn av sortering mismatch. Men hvis Du trenger å endre etter å ha opprettet Azure SQL-Databasen, er det ikke greit. Azure SQL DB støtter ikke endring av sortering ved HJELP AV ALTERDATABASESORTERING. Du får følgende feilmelding hvis du prøver å endre den.
1
2
3
4
|
Bruk master
gå
ENDRE DATABASE Azuredemodatabase
SAMLE SQL_Latin1_General_CP1250_CI_AS
|
- Merk: ikke endre eller angi en bestemt sortering før du har spesifikke krav. Gjør det aldri direkte på en produksjonsdatabase. Test det grundig på et LAVERE DB-miljø, og planlegg deretter å fortsette for produksjonssortering
Anta At du distribuerer En Azure SQL-Database fra DEN lokale BACPAC-filen. Du vil ha en annen sortering i måldatabasen.
- Merk: jeg antar at du har en aktiv Azure SQL DB. Hvis ikke, kan du bruke en gratis tier konto for distribusjon av testdatabasen
- Eksporter Azure SQL-databasen I BACPAC-format
- Installer Microsoft SQL Server Data-Tier Application Framework (18.1)
- Endre modell.xml – filkonfigurasjon
- Bruk sqlpackage.exe for å distribuere Azure-databasen med oppdatert sortering
- Kontroller databasesorteringen
- /tsn: Angi Azure SQL Server FQDN der vi vil importere DENNE BACPAC-filen. I mitt tilfelle er det azuredemosqldemo.database.windows.net
- / tdn :Det er Det nye Azure SQL-Databasenavnet. DU kan ikke importere BACPAC på en eksisterende database
- /tu: Angi admin-brukernavnet for å koble Til Azure SQL Server og distribuere databasen
- / tp: Skriv inn passordet for administratorbrukeren
- / sf: Angi BACPAC-filplasseringen
- / ModelFilePath: Skriv inn den oppdaterte modellen. XML – filbane
- Merk: Du bør ikke endre DB sortering uten noen spesifikke krav. Det kan føre til problemer hvis du endrer det vilkårlig
- Forfatter
- Siste Innlegg
- Bruk ARM-maler til å distribuere Azure container instances med SQL Server Linux – bilder-21. desember 2021
- Ekstern skrivebordstilgang for AWS RDS SQL Server Med Amazon Rds Custom-14. desember 2021
- LAGRE SQL Server – filer I Vedvarende Lagring For Azure Container Instances-desember 10, 2021
for denne artikkelen demo, vil vi gjøre følgende oppgaver:
Trinn 1: Eksporter Azure SQL-databasen I BACPAC-format
i dette trinnet eksporterer Vi Azure SQL DB I BACPAC-formatet. Vi kan bekrefte at eksisterende sortering er SQL_Latin1_General_CP1_CI_AS.
høyreklikk På Azure-databasen for eksport og velg Eksporter data-nivå-Program…
Angi katalogen i lagre på den lokale disken.
Bekreft, eksporter og overvåk fremdriften for data-tier-programmet I BACPAC-format.
Trinn 2: Last Ned Microsoft SQL Server Data-Tier Application Framework (18.1)
Du må laste ned OG installere den nyeste versjonen AV SSDT. Naviger til URL https://www.microsoft.com/en-us/download/details.aspx?id=57784 og klikk På Last ned.
Velg ØNSKET MSI-filversjon Og last den ned. Det er en lett pakke fil.
Følg installasjonsveiviseren For å konfigurere programrammeverket for Microsoft SQL Server-datanivå.
Trinn 3: Gi Nytt navn til den. BACPAC fil til .ZIP
i dette trinnet omdøper vi den eksporterte BACPAC-pakkefilen til ET ZIP-format. For å gjøre dette, høyreklikk på den importerte BACPAC og endre utvidelsen TIL ZIP. Filtypen komprimeres (zippet) etter endring av utvidelsen, som vist i figuren nedenfor.
høyreklikk på den komprimerte filen og pakk den ut. I den utpakkede mappen finner du en modell.xml, kopier modellen.xml til en annen katalog som C:\Temp mappe.
Åpne modellen.xml fra C:\Temp\Model.xml og endre DB sortering. Figuren nedenfor viser gamle og nye sorteringer For Azure SQL Database. HER bruker VI SQL-sortering med saksfølsomhet.
Trinn 4: Distribuer Azure Database ved hjelp av sqlpackage.exe
her, naviger til katalogen C:\Program Filer\Microsoft SQL Server \ 150 \ DAC \ bin i ledetekst. Vi bruker sqlpackage.exe for å importere BACPAC med parameteren / ModelFilePath. DET overstyrer BACPAC modell filkonfigurasjon med den spesifikke filen i denne parameteren.
Nødvendige parametere:
tidligere endret vi utvidelsen AV BACPAC-filen TIL ZIP. Vi må endre den tilbake TIL BACPAC for å kjøre sqlpackage.exe kommando.
for å endre sorteringen I BACPAC, utfør følgende kommando i en ledetekst.
sqlpackage.exe / Handling: Import /tsn:azuredemosqldemo.database.windows.net /tdn:Azuredemodatabasenew /tu:sqladmin /tp:******* / sf:C:\Temp \ azuredemodatabase.BACPAC / ModelFilePath: C: \ Temp \ modell.xml
du får en advarsel:
«Overordnet modell.xml using file ‘C:\Temp\model.xml’. Bruk av denne innstillingen kan føre til distribusjonsfeil og / eller utilsiktet tap av data. Denne innstillingen skal bare brukes når du feilsøker problemer med publisering, import eller skriptgenerering»
det starter dataimport, prosesstabeller og distribuerer database på den. Databasedistribusjonstiden avhenger av antall tabeller, datastørrelse, indekser.
til slutt får du meldingen-Importert database.
Trinn 5: Verifisering
koble nå Til Azure Database ved HJELP AV SSMS og bekreft databasesorteringen ved hjelp av følgende skript.
1
|
VELG KONVERTER (varchar (256), DATABASEPROPERTYEX (‘azuredemodatabasenew’,’sortering’));
|
som vist nedenfor bruker den nylig distribuerte databasen sortering SQL_Latin1_General_CP1_CS_AS.
logg nå På Azure-portalen og vis databaseegenskapene. Denne databasen har en generell Gen5, 2vcores prisnivå. Vi angav ikke noe prisnivå mens vi distribuerte databasen. Derfor tar Azure SQL database standard prisnivå.
Trinn 6: Distribuer Azure database i et bestemt prisnivå
Anta at vi vil distribuere en database med endret sortering og et grunnleggende prisnivå. For denne demoen, endrer VI DB sortering Til Latin1_General_BIN. Åpne derfor modellen.xml og endre sortering som uthevet før.
Denne gangen angir vi en ny parameter (/p) for å sette databaseutgaven. Den instruerer Azure til å distribuere databasen under det spesifikke prisnivået.
sqlpackage.exe / Handling: Import / tsn: azuredemosqldemo.database.windows.net /tdn:Azuredemodatabasenew /tu:sqladmin /tp:******* /p:Databaseutgave=Grunnleggende / Sf:C:\Temp\azuredemodatabase.BACPAC / ModelFilePath: C: \ Temp \ modell.xml
kontroller databasesorteringen når DB er distribuert. Som vist nedenfor bruker Den Latin1_General_BIN sortering.
du kan koble Til Azure-portalen og bekrefte prisnivået Som Grunnleggende.
Konklusjon
denne artikkelen utforsket Standard azure SQL Database sortering og prosessen for å endre DEN mens du importerer DB fra EN BACPAC-fil. Du kan angi ønsket sortering og distribuere databasen. Men aldri endre sortering med mindre du har et bestemt krav. Du kan prøve trinnene på Din Egen Test Azure SQL database.
han er skaperen av en av de største gratis online samlingene av artikler om et enkelt emne, med sin 50-delers serie På SQL Server Alltid På Tilgjengelighetsgrupper. Basert på hans bidrag TIL SQL Server-fellesskapet, har han blitt anerkjent med ulike priser, inkludert den prestisjetunge «Best author of the year» kontinuerlig i 2020 og 2021 På SQLShack.
Raj er alltid interessert i nye utfordringer, så hvis du trenger konsulenthjelp på et emne som er dekket i hans skrifter, kan Han nås på rajendra.gupta16 @ gmail.com
Vis alle innlegg Av Rajendra Gupta