gpt4 book ai didi

oracle - Entity Framework 和字符串作为 Oracle Db 上的 NCLOB

转载 作者:行者123 更新时间:2023-12-04 01:52:06 25 4
gpt4 key购买 nike

我有这个模型:

public class Teacher
{
public int TeacherID { get; set; }
public string Name { get; set: }
public string Surname{ get; set; }
}

当 Model First 运行时,它会创建我的 Teachers 表和 DbSet,但对于 Name 和 Surname(它们是字符串),它将 NCLOB 类型分配给列。
现在,对于 NCLOB 类型,我无法在我的表上执行诸如等于或不同之类的操作....

如何强制 MF 将 columntype 设置为 varchar?

最佳答案

我设法解决了在模型中设置最大字符串长度的问题

public class Teacher
{
public int TeacherID { get; set; }

[StringLength(255, MinimumLength = 3, ErrorMessage = "My Error Message")]
public string Name { get; set: }

[StringLength(255, MinimumLength = 3, ErrorMessage = "My Error Message")]
public string Surname{ get; set; }
}

如果没有 StringLength,Orcale 会创建一个 NCLOB 字段,该字段最多可以包含 4Gb 的数据。

注意:varchar 的最大长度为 4000 字节,因此我们不能将超过 2000 设置为 MaximumLenght(Unicode 每个字符 2 个字节)

关于oracle - Entity Framework 和字符串作为 Oracle Db 上的 NCLOB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27525078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com