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

Hvad er betydningen af ​​præfikset N i T-SQL-sætninger, og hvornår skal jeg bruge det?

Det erklærer strengen som nvarchar datatype i stedet for varchar

Du har muligvis set Transact-SQL-kode, der sender strenge rundt ved hjælp af et N-præfiks. Dette angiver, at den efterfølgende streng er i Unicode (N'et står faktisk for National language character set). Hvilket betyder, at du sender en NCHAR-, NVARCHAR- eller NTEXT-værdi i modsætning til CHAR, VARCHAR eller TEXT.

For at citere fra Microsoft:

Præfiks Unicode-tegnstrengkonstanter med bogstavet N. Uden N-præfikset konverteres strengen til databasens standardkodetabel. Denne standardkodetabel genkender muligvis ikke visse tegn .

Hvis du vil vide forskellen mellem disse to datatyper, se dette SO-indlæg:

Hvad er forskellen mellem varchar og nvarchar?



  1. Der er ingen primære eller kandidatnøgler i den refererede tabel, der matcher referencekolonnelisten i den fremmede nøgle

  2. Sådan rettes FEJL:kolonne c.relhasoids findes ikke i Postgres?

  3. Hvor meget diskplads er nødvendig for at gemme en NULL-værdi ved hjælp af postgresql DB?

  4. Forbindelsestimeout for SQL-server