Closed liujianming04 closed 2 years ago
在表、字段的命名规则中,也是不区分大小写的
我看表名是区分大小写的,不加反引号就会找不到表。
问题原因更正:
字段名是能区分大小写,单独建La
或者La或者la都没问题,但是同时存在La
和la,就失败
字段名在内部 统一转为了小写。 所以不能同时存在 La, la, lA,LA 的字段,它们在内部都会被转换为 小写的 “la”
但是desc显示表结构的时候,却是La,只是显示的问题吗?如果建表使用La,desc也是La。在数据插入时,字段写成la会报错,说la列不存在。
字段名在内部 统一转为了小写。 所以不能同时存在 La, la, lA,LA 的字段,它们在内部都会被转换为 小写的 “la”
如果说都转了小写,那么desc显示应该也是小写la,就是说无论建表的时候有没有加反引号,都会是小写的la,在insert的时候无论加不加反引号,都是认为小写的la,能写入成功。但是实际情况是,加了反引号就是大写,不加才是转小写,建表是La,insert指定是la,报字段不存在,那不就是小写的la不存在吗?只存在大写的La,要不然怎么会报错?
感觉有点矛盾,或者我理解的还不够透彻
使用转义符是保留大小写的。 如果不使用转义符则统一转为了小写。
Bug Description 使用schemaless写入influx行协议数据,属性中存在同名字段(大小写不一样),会报错
To Reproduce 接口地址:http://xxxx:6041/influxdb/v1/write?db=db_61e753468ecb3800497311bd&u=root&p=taosdata&precision=ms 请求主体(数据): type_61e753468ecb3800497311bd_19gqMPJ3Os1,ct_name__=ct_type_19gqMPJ3Oso_19gBnvupzB6,deviceId=19gBnvupzB6 La$f=257.65,Timestamp$f=1650607683.76,assetId=L"nx_devzy001_inst02",calculate_time=1650607683880i,cloud_time=1650607683781i,create_time=1650607683762i,metricsType=0i,write_time__=1650610367037i,bool_test$b=true,duration$i=10i,int_test$i=-46i,la$f=78.0,lb$f=78.0,lc$f=29.0,number_test$f=-46.0,string_test$s=L"Hello你好!",times_int_val$i=1650607683762i,workstatus$i=1i 1650607683762
Expected Behavior 自动建表时对于字段,需要区分大小写,对于La和la,应该认为不同的字段。
Screenshots
Environment (please complete the following information):