2012-12-14 22 views
5

Próba wstawienia wartości do pola danych varchar z numerem indeksu górnego 4 (potęga 4) na końcu.Wstawianie numerów w indeksie górnym w MS SQL

Jestem w stanie wstawić/zaktualizować wartości za pomocą indeksu górnego 2 i 3 (tj. Do kwadratu i sześcianu), ale nie mogę uzyskać mocy 4, aby poprawnie wprowadzić wartość w polu varchar?

Działa, jeśli zmienię to pole na nvarchar, ale staram się tego uniknąć.

Działa to na kwadrat lub do potęgi 2

update mytable 
set myfield = 'test'+NCHAR(0xb2) 

Jednakże, starając się uzyskać to do pracy za pomocą 4 na koniec ...

update mytable 
set myfield = 'test'+NCHAR(0x2074) 

To właśnie aktualizuje on numeryczny 4, a nie indeks górny 4. Czy to dlatego, że typ danych VarChar rozpoznaje kwadraty i sześciokąty, ale nie inne?

Odpowiedz

3

Indeksy górne powyżej 3 są dostępne tylko jako znaki Unicode, więc trzeba użyć NVARCHAR zamiast VARCHAR do pola danych, niestety.

proszę zobaczyć ASCII table dla dopuszczalnych znaków bez użycia NVARCHAR - Zobaczysz tylko dla indeksu górnego 2 i 3.