структура второго уровня воспринимается как целое поле а не набор.
Нужны какие то спец указатели для субструктур?
в синтетике вообще вылетел ValuesBlockInputFormat
client.execute('DROP TABLE test')
client.execute(
"""CREATE TABLE test(
id FixedString(36) NOT NULL,
time DateTime64(3, "Europe/Moscow") NOT NULL,
data Nested(
ip IPv4,
name_en String,
code String,
subsrtuct Nested(
sub_id UInt8,
sub_string String
))
)
ENGINE = Memory
"""
)
client.execute("""Insert into test Values
('00f0d86e-1234-12ed-1d11-40feb884ac00',
1655672463987,
['192.168.0.1', '192.168.0.2', '192.168.0.3'], ['Some name', 'Some name1', 'Some name2'], ['KK', 'KK1', 'KK2'],
[12, 13, 14], ['Sub_string_value1', 'Sub_string_value2', 'Sub_string_value'])""")
DB::Exception: Cannot parse expression of type Array(Nested(sub_id UInt8, sub_string String)) here: [12, 13, 14], ['Sub_string_value1', 'Sub_string_value2', 'Sub_string_value3']): While executing ValuesBlockInputFormat. Stack trace:
[12, 13, 14], ['Sub_string_value1', 'Sub_string_value2', 'Sub_string_value'] -- Это что такое? у вас в таблице нету
типа вот эти поля хочу вставить subsrtuct Nested( sub_id UInt8, sub_string String ))
Insert into test Values ('00f0d86e-1234-12ed-1d11-40feb884ac00', 1655672463987, ['192.168.0.1', '192.168.0.2', '192.168.0.3'], ['Some name', 'Some name1', 'Some name2'], ['KK', 'KK1', 'KK2'], [[(12,'Sub_string_value1')],[(13,'Sub_string_value2')],[(14,'Sub_string_value3')]] ) но тут есть проблема, из питона на самом деле надо делать инсерты по-другому
а есть ли мануал какой покурить?
Дока от кликзауса + kb от алтинити
Ну в доке явно нет про инсерты вложенных структур на питоне ) а что такое kb? Можно ссылку?
спросите в гитхабе у них
Гугл в помощь :)
https://github.com/mymarilyn/clickhouse-driver/blob/9a8b4a0706d78ee9952737a9b277f448acf3eaf0/tests/columns/test_nested.py
Обсуждают сегодня