Как прочитать битовый тип данных SQL и записать его в файл в c # - PullRequest
0 голосов
/ 15 апреля 2019

Я использую шаблон cdc в SQL Server для отслеживания изменений данных в базе данных. Когда я читаю __start_lsn, который является bit типом данных в sql, с помощью Encoding.UTF8.GetString(context.SomeCdcTable.__start_lsn) результат получается: \u0000捫܀䘊Ѐ. Я пробовал UTF32, Unicode и другие схемы, но без прогресса. Буду признателен за любую подсказку, спасибо.

1 Ответ

0 голосов
/ 16 апреля 2019

Столбец __$start_lsn имеет тип данных binary(10) (не bit). Этот столбец не хранит символьные данные (в любой кодировке), это просто двоичное число. Если вы хотите преобразовать его в строку (для хранения в файле JSON), вы можете использовать функцию CONVERT, указав 1 в качестве стиля:

SELECT CONVERT(CHAR(22),sys.fn_cdc_get_min_lsn('YourTable'),1)
...