枚举主键数据删除Truncated incorrect DOUBLE value: 'typeA'” 返回
[SugarColumn(IsPrimaryKey = true, IsIdentity = false, ColumnDataType = "int")] public MachineTypeEnum? MachineType { get; set; } 新增数据时可以正常新增 删除数据时 字段定义为枚举,数据库里是int类型,删除数据时sql语句中 MachineType 没有转为int而是字符串 DELETE FROM `Machine` WHERE ((`MachineType`='typeA`))
热忱回答(4)
-
fate sta VIP0
2026/3/9提供删除代码。
0 回复 -
zhj VIP0
2026/3/9@fate sta:
public bool Delete<T>(T entity, out string result) where T : class, new()
{
try
{
var delete = _db.Deleteable<T>(entity);
var str = delete.ToSqlString();
bool success = delete.ExecuteCommand() > 0;
//bool success = _db.Deleteable<T>(entity).ExecuteCommand() > 0;
result = success.ToString();
return success;
}
catch (Exception ex)
{
result = ex.Message;
return false;
}
}
只是基本的泛型
实体类主键为 可为空的枚举,是不是这个原因0 回复 -
fate stay night VIP0
2026/3/10MachineTypeEnum? 改成 MachineTypeEnum
试试
0 回复 -
zhj VIP0
2026/3/19@fate stay night:不好意思,比较忙,忘看了。试过了没有用,目前是直接Where指定主键值进行删除
0 回复