Skip to content

InsertValueSql 指定序列时,无法使用 InsertOrUpdate #2161

@chenbowu785

Description

@chenbowu785

问题描述及重现代码:

指定InsertValueSql为序列后,执行 InsertOrUpdate 生成的 merge 语句语法错误

报错原因:
在USING语句中不能使用序列

[Table(Name = "HK_EVENTDATA")]
public class HikVisionEventData
{
    [Column(IsPrimary = true, IsIdentity = true, InsertValueSql = "SEQ_HK_EVENTDATA.NEXTVAL")]
    public long Id { get; set; }

    public string EventId { get; set; }
}

  _fsql.InsertOrUpdate<HikVisionEventData>()
         .SetSource(entityList, it => it.EventId)
         .IfExistsDoNothing()
         .ExecuteAffrowsAsync(stoppingToken);

数据库版本

oracle

安装的Nuget包

FreeSql 3.5.209
FreeSql.Provider.Oracle 3.5.209

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

.net 8

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions