在cassandra表中插入俄语字符。 CQL Shell未设置为cp65001

时间:2017-12-30 06:23:58

标签: windows cassandra datastax

我在Windows10中使用Cassandra的DataStax发行版(v.3.9.0)。

我在我写的命令提示符下运行cassandra.bat和cqlsh.bat:

C:\DataStax\...\bin>chcp 65001  

我打开Cassandra CQL Shell,但我仍然收到警告"控制台代码页必须设置为cp65001以支持Windows平台上的utf-8编码"

我创建了一个表

CREATE TABLE emp(
emp_id int PRIMARY KEY,
emp_name varchar, emp_city varchar, emp_sal varint, emp_phone varint);

我插入一些寄存器:

INSERT INTO emp (emp_id, emp_name, emp_city,
   emp_phone, emp_sal) VALUES(1,'ram', 'Hyderabad', 9848022338, 50000)
USING TTL 0;

到目前为止一切顺利。但是当我尝试执行包含俄语字符的插入时:

INSERT INTO emp (emp_id, emp_name, emp_city,
   emp_phone, emp_sal) VALUES(9, 'Надежда', 'Mосква', 9841027331, 105000)
   USING TTL 0;

当我执行SELECT * FROM emp时;我明白了:

  9 |    M????? |  ??????? | 9841027331 |  105000

另外,如果我从执行的命令提示符处执行:cqlsh.bat --encoding utf-8,我甚至无法执行代码,它也不会识别冒号(;)。这就是:

INSERT INTO emp (emp_id, emp_name, emp_city,
            ...    emp_phone, emp_sal) VALUES(9, 'Надежда', 'Mосква', 
9841027331, 105000)
   USING TTL 0;
            ...
            ...

任何帮助?

0 个答案:

没有答案