如何通过CQLSH命令将字符串(文本)中的换行符(\n)插入Cassandra?
更新: 如果我通过python驱动程序脚本插入同一行,则换行符可以工作 session.execute(“插入ctable”+“(cid,cstring)值(%s,%s)”,('2','row1\nrow2')) 仍然不明白为什么CQLSH命令不起作用 原始问题: 我试图通过CQLSH命令在Cassandra中插入一个很长的字符串,并在显示时添加一个“\n”将字符串拆分为两行 我试过了如何通过CQLSH命令将字符串(文本)中的换行符(\n)插入Cassandra?,cassandra,cqlsh,cassandra-cli,Cassandra,Cqlsh,Cassandra Cli,更新: 如果我通过python驱动程序脚本插入同一行,则换行符可以工作 session.execute(“插入ctable”+“(cid,cstring)值(%s,%s)”,('2','row1\nrow2')) 仍然不明白为什么CQLSH命令不起作用 原始问题: 我试图通过CQLSH命令在Cassandra中插入一个很长的字符串,并在显示时添加一个“\n”将字符串拆分为两行 我试过了 insert into ctable (cid, cstring ) values('2', 'row1\nr
insert into ctable (cid, cstring ) values('2', 'row1\nrow2');
insert into ctable (cid, cstring ) values('2', 'row1\\nrow2');
insert into ctable (cid, cstring ) values('2', 'row1\r\nrow2');
上述陈述均不起作用,所有\n均被视为正常的行为人。
有人能帮忙吗?简短回答:cqlsh不以任何方式处理字符串中的转义字符。如果要插入不可打印的字符,如换行符,\n请为您的语言使用cassandra驱动程序。有关详细答案,请参见如果在键入字符串时按enter键,您可以直接在CQLSH中执行此操作。只需按enter键,而不是输入字符“\n”。CQLSH应在新行上显示3个点,指示其添加内容
我知道现在回答这个问题已经太晚了,但将答案留给像我这样的将来搜索这个问题的人。您可以尝试使用此SQL,只需使用enter:
insert into ctable (cid, cstring ) values('2', 'row1
row2');
谢谢我使用的是用于Cassandra的python驱动程序,它可以工作。FocusBlast给出了相同的答案-为什么要复制?