目录
特性列表
名称 | 描述 |
IsIdentity | 是否创建自增标识 |
IsPrimaryKey | 是否创建主键标识 |
ColumnName | 创建数据库字段的名称(默认取实体类属性名称) |
ColumnDataType | 创建数据库字段的类型用法1: “varchar(20)” 不需要设置长度用 法2: 不设置该参数 系统会根据C#类型自动生成相应的数据库类型 用 法3: 多库兼容可以用 :看标题9 |
IsIgnore | ORM不处理该列 |
ColumnDescription | 备注 表注释 (新版本支持XML文件) |
Length | 长度 设成10会生成 xxx类型(10), 没括号的不设置 |
IsNullable | 是否可以为null默为false |
DecimalDigits | 是否可以为null默为false |
OracleSequenceName | 设置Oracle序列,设置后该列等同于自增列 |
OldColumnName | 修改列名用,这样不会新增或者删除列 |
IndexGroupNameList | 创建索引用 |
UniqueGroupNameList | 创建唯一索引 |
注意:有2个属性用处不 同DefaultValue IsOnlyIgnoreInsert | DefaultValue=默认值 用来建表设置字段默认值 IsOnlyIgnoreInsert=true 插入数据时取默认值很多情况需要2个一 起使用如果只建表不插入数据用1个 如果建表并且插入数据用2个 |
特殊支持
如果大量使用 ColumnDataType=”nvarchar(50)” 自定义类型将无法很好的支持多种数据库,比如很多库不支持nvarchar
当然你也可以使用AOP替换 ColumnDataType 去实现多库,下面介绍自带的方案
string 大文 本 | [SugarColumn(ColumnDataType = “longtext,text,clob”)] public string FieldName{ get; set; } 注意暂时不支持 varchar(max)后面只能用text |
string 设置 长度的字符 串 | [SugarColumn(Length=10)] public string FieldName{ get; set; } |
int 整数 | public int FieldName{ get; set; } |
short 整数 小 | public short FieldName{ get; set; } |
long 大数 字 | public long FieldName{ get; set; } |
bool 真假 | public bool FieldName{ get; set;} |
decimal 默 认 | public decimal FieldName{ get; set; } |
decimal 自 定义 | //18,2 18,4 18,6 这几种兼容性好 [SugarColumn(Length=18,DecimalDigits=2)]public decimal FieldName{ get; set; } |
DateTime 时间 | public DateTime FieldName{ get; set; } |
枚举 (数据库存int) | public 枚举 FieldName{ get; set; } |