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

Откуда: Москва
Сообщений: 4806
Пытаюсь загрузить файл в вертику. кодировка 1251

Был сделан на SQL Server

xp_cmdshell 'bcp "SELECT id_age_span,Name,years_from,year_to FROM Dictionary.Dim_AgeSpan_InMemory" queryout "K:\exp_tmp\Dictionary.txt" -T -c -d WildberriesRU -C 1251 > K:\exp_tmp\log_bcp.log';

Команда COPY не желает принимать русские буквы никак. SET LOCALE не помогает

SET LOCALE TO ru_RU;

copy Dictionary.Category from '/home/dbadmin/Dictionary.txt' DELIMITER E'\t' ;
8 сен 15, 19:53    [18124993]     Ответить | Цитировать Сообщить модератору
 Re: русские буквы вертике  [new]
lookat
Member

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

Для COPY данные нужны в UTF-8.
Или еще раз сделать BCP с правильным флажком,
или то, что уже есть, прогнать через iconv / econv.

Удачи
9 сен 15, 00:45    [18125919]     Ответить | Цитировать Сообщить модератору
 Re: русские буквы вертике  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4806
lookat,

BCP отказывается делать UTF-8.

Пришлось выгрузить в 1251, потом

using System.IO;
using System.Text;

namespace Convert1251Utf8
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = File.ReadAllText(args[0], Encoding.GetEncoding(1251));
            File.WriteAllText(args[1], text, Encoding.UTF8);
        }
    }
}


потом COPY на вертике
9 сен 15, 11:47    [18127224]     Ответить | Цитировать Сообщить модератору
 Re: русские буквы вертике  [new]
Gostevoidom
Member

Откуда:
Сообщений: 1
&
8 окт 15, 18:15    [18254675]     Ответить | Цитировать Сообщить модератору
Все форумы / NoSQL, Big Data Ответить