FreeSql icon indicating copy to clipboard operation
FreeSql copied to clipboard

clickhouse使用字典方式更新失败

Open wangbs-dev opened this issue 2 years ago • 2 comments

使用UpdateDict方法进行数据更新时报异常。

image

表结构: create table if not exists test.st_pptn_r_3 ( STCD String, TM DateTime, DRP Nullable(Decimal(9, 6)), DRP_C Nullable(Int32) ) engine = ReplacingMergeTree() PARTITION BY toYYYYMMDD(TM) PRIMARY KEY (STCD, TM) ORDER BY (STCD, TM) SETTINGS index_granularity = 8192


var dic = new Dictionary<string, object>
            {
                { STCD, "12345678" },
                { TM, "2024-01-01 00:00:00" },
                { "DRP, "123" },
                { "DRP_C", 100 }
            };
var primary = new[] { "STCD", "TM"};

_fsql.UpdateDict(dic).AsTable("st_pptn_r_3").WherePrimary(primary).ExecuteAffrows() > 0;

数据库版本

clickhouse 23.6.2.18

安装的Nuget包

3.2.810

.net framework/. net core? 及具体版本

.net 6

wangbs-dev avatar Jan 15 '24 01:01 wangbs-dev

跟踪了代码,其中ColumnInfo里面的Attribute.DbType为空

wangbs-dev avatar Jan 15 '24 01:01 wangbs-dev

FreeSql.Provider.ClickHouse 3.2.811-preview20240115

升这一个包

2881099 avatar Jan 15 '24 04:01 2881099