Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Запись спецсимволов в таблицу  [new]
Lina12345
Member

Откуда:
Сообщений: 4
У таблицы поле (varchar). В него могут записываться строка со спецсимволами (½, обозначение диаметра и т.п.)
Пробовала N подставлять спереди - выдает ? вместо нужного результата. С диаметром О подставляет.
Если использовать NChar() - то ?, то S. Тестила на дроби.
Какие еще варианты записи существуют?
2 июл 18, 13:37    [21536590]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36893
Код показывайте и схему таблицы.

Сообщение было отредактировано: 2 июл 18, 13:38
2 июл 18, 13:38    [21536595]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
Lina12345
Member

Откуда:
Сообщений: 4
Гавриленко Сергей Алексеевич,

insert into TypeFamily(tf_ID, f_ID, tf_name) values(1542, 1, N'Ø50 15кч11р') - это вставка

код таблицы
create table TypeFamily (
tf_ID int not null,
f_ID int not null,
tf_name varchar(150) not null,
constraint PK_TYPEFAMILY primary key nonclustered (tf_ID)
)
go
2 июл 18, 13:44    [21536622]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Lina12345,

Nvarchar(150)
2 июл 18, 13:47    [21536640]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
Lina12345
Member

Откуда:
Сообщений: 4
WarAnt,

прям обязательно? В некоторых местах смотрела, что не рекомендуется использовать nvarcar() из-за 2 байтового хранения символов.
Можно применять конструкцию N'Ø50 15кч11р' при добавлении записи
2 июл 18, 13:52    [21536667]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Lina12345
WarAnt,

прям обязательно? В некоторых местах смотрела, что не рекомендуется использовать nvarcar() из-за 2 байтового хранения символов.
Можно применять конструкцию N'Ø50 15кч11р' при добавлении записи


Не необязательно, если вам не нужно хранить данные в разных кодировках в одной колокне.
НО, вы как я понял, собраетесь запихать в колонку с одиночной кодировкой два символа из разных, так что вы уж определитесь что вам надо, шашечки или ехать?
2 июл 18, 14:04    [21536710]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
Lina12345
Member

Откуда:
Сообщений: 4
WarAnt,
Если я правильно поняла N'' преобразует строку к кодировке Unicode (т.е. она получается одна). Или я что-то не понимаю
2 июл 18, 14:08    [21536716]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
msLex
Member

Откуда:
Сообщений: 7983
Lina12345
WarAnt,
Если я правильно поняла N'' преобразует строку к кодировке Unicode (т.е. она получается одна). Или я что-то не понимаю

Не в Unicode а в utf16, которая 2-х байтовая и может храниться только в nvarchar
2 июл 18, 14:31    [21536795]     Ответить | Цитировать Сообщить модератору
 Re: Запись спецсимволов в таблицу  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Lina12345
WarAnt,
Если я правильно поняла N'' преобразует строку к кодировке Unicode (т.е. она получается одна). Или я что-то не понимаю


Да чтото не понимаете, может пора почитать?
2 июл 18, 14:43    [21536841]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить