Introductie
De standaardsortering is een zeer belangrijk onderdeel van SQL Server dat bepaalt hoe stringgegevens worden vergeleken en gesorteerd wanneer ze worden opgeslagen en opgehaald in de database. Verschillende sorteerregels kunnen tot verschillende resultaten leiden, vooral bij meertalige tekst. Daarom zal het weten hoe je deze collaties kunt aanpassen van grote hulp zijn bij het ontwerpen van databases en het verwerken van data. Dit artikel gaat dieper in op hoe je de standaardrangatie in SQL Server kunt aanpassen en geeft codevoorbeelden.
Wat is een collatieregel?
Collatie definieert de tekenset, vergelijkingsregel en collatieregel van tekengegevens in SQL Server. Elke sorteerregel kan het volgende regelen:
- Hoe karakters worden gecodeerd (bijv. UTF-8, ASCII, enz.)
- Naamvalgevoeligheid (bijvoorbeeld, "A" en "a" worden als gelijk of niet gelijk beschouwd)
- Accentgevoeligheid (bijvoorbeeld hoe "é" versus "e" wordt behandeld)
Voorbeelden van collaties
In SQL Server bestaat de naam van een collatie meestal uit de volgende delen:
{tekenset}_{collatie}_{gevoeligheid} Bijvoorbeeld, SQL_Latin1_General_CP1_CI_AS waarbij:
- SQL_Latin1_General is de tekenset
- CP1 is de codepagina
- CI staat voor Case Insensitive (Case Insensitiv)
- AS staat voor Accent Sensitive (Accent Sensitive)
Bekijk de huidige regels voor database-collatie
De SQL-instructie ziet er zo uit:
Resultaat:Chinese_PRC_CI_AS
Wijzig de standaardcollatie
In SQL Server kun je de standaardrangatie op de volgende manieren aanpassen:
- Stel de collatieregels voor databases in.
- Stel een verzamelingsregel in voor specifieke kolommen.
- Pas de standaard collatieregels voor de hele server aan.
1. Stel collatieregels op voor de database
Als je de standaardrangatie moet instellen bij het aanmaken van een nieuwe database, kun je de volgende SQL-instructie gebruiken:
Als er een database bestaat en je de standaardrangatie moet aanpassen, kun je het volgende commando gebruiken:
Dit wijzigt de standaardrangoratie van de MyDatabase-database.
2. Sorteerregels instellen voor specifieke kolommen
In sommige gevallen wil je verschillende rangeringsregels gebruiken voor een bepaalde kolom. In dit geval kun je de collatie specificeren wanneer je de tabel aanmaakt:
De bovenstaande code maakt een tabel genaamd MyTable waarbij de kolom Naam een hoofdlettergevoelige ranglijst gebruikt.
3. Pas de standaard collatieregels voor de hele server aan
Het wijzigen van de standaardcollatie van een server is een gevoelige handeling. Voordat je dit doet, zorg ervoor dat je begrijpt welke impact het kan hebben. Gebruik het volgende commando om de standaardcollatie van de server aan te passen:
Nadat je de standaardcollatie van je server hebt aangepast, moet je je SQL Server-instantie opnieuw opstarten voordat de wijzigingen effect hebben.
Statusgrafiek van collaties
Het volgende statusdiagram toont de verschillende toestanden en veranderingen in de SQL Server-verzameling:
Voorbeeldapplicatie
Hier zijn enkele toepassingsscenario's om je te helpen het belang van collatieregels in databaseontwerp te begrijpen:
- Meertalige ondersteuning: In meertalige apps moet je mogelijk een verzameling instellen voor specifieke talen. Zo kan de letter "ñ" in het Spaans anders worden behandeld onder verschillende sorteerregels.
- Door de gebruiker gedefinieerde gegevens: De door de gebruiker ingevoerde gegevens kunnen verschillende hoofdletters en accenttekens bevatten. In dit geval kan een geschikte samenstelling ervoor zorgen dat gebruikers de gewenste resultaten krijgen bij het zoeken en vergelijken.
- Datamigratie: Wanneer u data van het ene systeem naar het andere migreert, is het belangrijk om ervoor te zorgen dat de verzameling van de doel-database consistent is met de brondatabase om data-inconsistenties te voorkomen.
conclusie
In SQL Server is het correct configureren en aanpassen van standaardcollatieregels een cruciaal onderdeel van databaseontwerp. Het beïnvloedt niet alleen de opslag en het ophalen van gegevens, maar beïnvloedt ook direct de gebruikerservaring van de applicatie. Door de codevoorbeelden en gedetailleerde uitleg in dit artikel hoop ik dat je een dieper begrip hebt van het concept van collatieregels en hoe je deze kunt aanpassen. Voordat je deze wijzigingen doorvoert, maak je een back-up en test je ze op de juiste manier om de integriteit en veiligheid van je data te waarborgen.
Referentie:De hyperlink-login is zichtbaar. |