传入一个实体 student(){id = 1,name = "测试" age = null,sex = null} 下面 是修改的方法 public async Task EditAsync(T model, bool IsSava = true) { _Db.Configuration.ValidateOnSaveEnabled = false; //关闭验证 _Db.Entry(model).State = EntityState.Modified; if (IsSava) {…
一般的更新代码是这样的 public T Update<T>(T entity) where T : ModelBase { var set = this.Set<T>(); set.Attach(entity); this.Entry<T>(entity).State = EntityState.Modified; this.SaveChanges(); return entity; } 但是有时候有更新的时候,如果为null则不更新这字段,这个时候就会有问题了,这个…
c#使用 Newtonsoft.Json 将entity转json时,忽略为null的属性,直接在属性上加下面的特性 [JsonProperty(NullValueHandling=NullValueHandling.Ignore)]…
--增加备份字段alter Table tableName add columnNameBak bigint ; --将主键自增字段 赋值到备份字段update tableNameset columnNameBak = columnName; --删除主键备份字段约束ALTER TABLE tableNameDROP CONSTRAINT PK_shoppingcart --删除主键自增字段alter Table tableName drop column columnName ; --修改备份…
在修改表或表的字段Name的时候不让Code不自动跟着变,设置如下: tools-> General   Options-> Dialog 去掉勾选 Name To Code mirroring…
thinkphp模型中的获取器和修改器(根据字段名自动调用模型中的方法) 一.总结 记得看下面 1.获取器的作用是在获取数据的字段值后自动进行处理 2.修改器的作用是可以在数据赋值的时候自动进行转换处理 3.获取器应用:我们在数据库存性别的时候不能存男女,而可以存0(未知)1(男)2(女),这样快,获取器就是我在控制器中通过$user->toArray()从模型获取数据的时候,自动调用模型中的getSexAttr()方法,从而返回的结果里面直接是男女,而不是012 4.模型中的方法是自动调用的,…
若向hive表添加字段,通常会使用下面这种语句 alter table default.testparquet add columns(c8 string); 但是对于分区表来说, 1. 若新建的分区在添加字段之前,新加的字段不会被加到已有分区中. 2. 若新建的分区在添加字段之后,新的分区会继承表的字段. 这种情况会导致的问题就是在查询的时候老的分区虽然能查到新加的字段,但是新加字段的值为null. 解决方案: 1. 使用类似这样的语句:alter table default.testparq…
EF Core 数据变更自动审计设计 Intro 有的时候我们需要知道每个数据表的变更记录以便做一些数据审计,数据恢复以及数据同步等之类的事情, EF 自带了对象追踪,使得我们可以很方便的做一些审计工作,每次变更发生了什么变化都变得很清晰,于是就基于 EF 封装了一层数据变更自动审计 使用效果 测试代码: private static void AutoAuditTest() { // 审计配置 AuditConfig.Configure(builder => { builder // 配置操作…
本文目录 查看实体当前.原始和数据库值:DbEntityEntry 查看实体的某个属性值:GetValue<TValue>方法 拷贝DbPropertyValues到实体:ToObject方法 修改DbPropertyValues当前值:索引器 克隆实体:Clone方法 设置实体的值:SetValues方法 克隆实体:SetValues 获取和设置实体的单个属性:Property方法 查询实体的属性是否被修改:IsModified方法 修改导航属性 重新加载实体:Reload方法 读取相关联的…
1.登录数据库 >mysql -u root -p 数据库名称 2.查询所有数据表 >show tables; 3.查询表的字段信息 >desc 表名称; 4.1.修改某个表的字段类型及指定为空或非空 >alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空]; >alter table 表名称 modify 字段名称 字段类型 [是否允许非空]; 4.2.修改某个表的字段名称及指定为空或非空 >alter table 表名称 cha…