为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:v8.1
【操作系统】:linux
【CPU】: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz
【问题描述】*:sequence id和timestamp联合主键,但是保存到数据库的时候SELECT "CreatedAt", "Id" FROM MMS."StripOperationHistories" WHERE sql%ROWCOUNT = 1 AND "Id" = scope_identity()报错,经测试主要是因为scope_identity返回了null。详细报错信息如下:
[2026-03-20T15:45:07 INF] Executed DbCommand (271ms) [Parameters=[:__request_Step_0='?' (Size = 100)], CommandType='Text', CommandTimeout='0'] SELECT TOP(1) "s"."Id", "s"."CreatedAt", "s"."DownloadFromStepId", "s"."Grouped", "s"."IsStepControl", "s"."ProductionCapacityControl", "s"."ShouldCreateNewMap", "s"."StepDownloadAction", "s"."StepName", "s"."StepUploadDataType", "s"."StepUploadMergeType", "s"."StepUploadShouldMerge", "s"."UpdatedAt" FROM "Steps" AS "s" WHERE "s"."StepName" = :__request_Step_0 [2026-03-20T15:45:07 INF] Executed DbCommand (233ms) [Parameters=[:__request_PackageName_0='?' (Size = 100)], CommandType='Text', CommandTimeout='0'] SELECT TOP(1) "p"."Id", "p"."CellColumns", "p"."CellDies", "p"."CellRows", "p"."Columns", "p"."CreatedAt", "p"."DefaultBinCode", "p"."LastUpdateUserId", "p"."PackageName", "p"."ReduceDefects", "p"."Rows", "p"."ShouldCreateNewMap", "p"."UpdatedAt" FROM "Packages" AS "p" WHERE "p"."PackageName" = :__request_PackageName_0 [2026-03-20T15:45:08 INF] Executed DbCommand (251ms) [Parameters=[:p0='?' (DbType = Int32), :p1='?' (Size = 100), :p2='?' (Size = 100), :p3='?' (Size = 100), :p4='?' (Size = 100), :p5='?' (Size = 100), :p6='?' (Size = 32767) (DbType = AnsiString), :p7='?' (Size = 1000), :p8='?' (DbType = Boolean), :p9='?' (DbType = Boolean), :p10='?' (DbType = Boolean), :p11='?' (DbType = Boolean), :p12='?' (DbType = Int64), :p13='?' (Size = 100), :p14='?' (DbType = Single), :p15='?' (Size = 32767), :p16='?' (Size = 100), :p17='?' (DbType = Int32), :p18='?' (Size = 100), :p19='?' (Size = 32767) (DbType = AnsiString), :p20='?' (DbType = Int32), :p21='?' (Size = 100), :p22='?' (DbType = Single), :p23='?' (Size = 100), :p24='?' (Size = 32767) (DbType = AnsiString), :p25='?' (DbType = Int32), :p26='?' (Size = 100), :p27='?' (DbType = Int32), :p28='?' (DbType = Int32), :p29='?' (DbType = Int32), :p30='?' (Size = 32767), :p31='?' (DbType = Int32), :p32='?' (DbType = DateTime2), :p33='?' (DbType = Single)], CommandType='Text', CommandTimeout='0'] INSERT INTO "StripMaps" ("Columns", "CusLotId", "CusWaferId", "Customer", "EqpModel", "EqpName", "ErrorDetail", "ErrorMessage", "HasProductRelation", "HasWaferRelation", "IsEdited", "IsMerged", "LastUpdateUserId", "LotId", "LotYield", "OriginLocation", "PackageName", "PassCount", "Product", "RawData", "Rows", "SpreadLotId", "SpreadLotYield", "StepName", "StripAxesInfo", "StripDataType", "StripId", "StripReUploadStatusType", "StripSourceType", "StripStatusType", "SubstrateSide", "TotalCount", "UpdatedAt", "Yield") VALUES (:p0, :p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :p10, :p11, :p12, :p13, :p14, :p15, :p16, :p17, :p18, :p19, :p20, :p21, :p22, :p23, :p24, :p25, :p26, :p27, :p28, :p29, :p30, :p31, :p32, :p33); SELECT "CreatedAt", "Id" FROM "StripMaps" WHERE sql%ROWCOUNT = 1 AND "CreatedAt" = SYSDATE AND "Id" = scope_identity(); Exception thrown: 'Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException' in System.Private.CoreLib.dll StripMap.Id = 0, CreatedAt = 0001/1/1 00:00:00 [2026-03-20T15:45:08 INF] Executed DbCommand (314ms) [Parameters=[:__p_0='?' (DbType = Int64), :__p_1='?' (DbType = DateTime2)], CommandType='Text', CommandTimeout='0'] SELECT TOP(1) "s"."Id", "s"."CreatedAt", "s"."Columns", "s"."CusLotId", "s"."CusWaferId", "s"."Customer", "s"."EqpModel", "s"."EqpName", "s"."ErrorDetail", "s"."ErrorMessage", "s"."HasProductRelation", "s"."HasWaferRelation", "s"."IsEdited", "s"."IsMerged", "s"."LastUpdateUserId", "s"."LotId", "s"."LotYield", "s"."OriginLocation", "s"."PackageName", "s"."PassCount", "s"."Product", "s"."RawData", "s"."Rows", "s"."SpreadLotId", "s"."SpreadLotYield", "s"."StepName", "s"."StripAxesInfo", "s"."StripDataType", "s"."StripId", "s"."StripReUploadStatusType", "s"."StripSourceType", "s"."StripStatusType", "s"."SubstrateSide", "s"."TotalCount", "s"."UpdatedAt", "s"."Yield" FROM "StripMaps" AS "s" WHERE "s"."Id" = :__p_0 AND "s"."CreatedAt" = :__p_1 DB values is null: True [2026-03-20T15:45:08 INF] Executing ObjectResult, writing value of type 'RunanMms.Schema.ObjectSchema`1[[System.Nullable`1[[System.Boolean, System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]'. [2026-03-20T15:45:08 INF] Response: StatusCode: 200 Content-Type: application/json; charset=utf-8 [2026-03-20T15:45:08 INF] Executed action RunanMms.Controllers.Mes.UploadStripMapController.UploadStripMap (RunanMms) in 3197.0962ms

看下表结构,是IDENTITY还是AUTO_INCREMENT
部分较老的驱动对于AUTO_INCREMENT自增列识别不正确,右上角可以选择新版本下载,更换下驱动试试