Sunshine数据库篇之增删改

来源:互联网 发布:ubuntu开机出现grub 编辑:程序博客网 时间:2024/04/28 18:27


一:添加

       添加一条

 DataBase.IDB.Insert<notice>(new notice() {  name= "xx" });
       批量添加

List<notice> li = new List<notice>();            li.Add(new notice() { name = "xx" });            li.Add(new notice() { name = "xx2" });            DataBase.IDB.InsertS<notice>(li);


二:更新

     1:更新一条

DataBase.IDB.UPdate<notice>(new notice() { id = 1 });

     2:批量更新

List<notice> li = new List<notice>();            li.Add(new notice() { id = 1 });            li.Add(new notice() { id = 2 });            DataBase.IDB.UPdateS<notice>(li);

    3:自改变式更新(有时我们需要在原来的基础上修改)


        先在需要的属性配置特性 ,然后使用UPdateAutoCol方法更新

[Column(isAutoAdd = true)]

       让timeconfined在本身的基础上减2

DataBase.IDB.UPdateAutoCol(new notice() { id = 1, timeconfined=-2});

   

4:更新某个字段为空( 因为让更新更简洁,如果为空就不更新,但是也有可能我们想要更新某个字段为空)


    a:在需要为空的字段上配置特性              

 [Column(IsNullable = true)]        public int?  MDPortId{get;set;}

    b:使用UPdateCanNull方法更新     

DB.IDB.UPdateCanNull(new Price_UpSet_Unite(){MDPortId = null,QYPortId =1,Id =2});    
             插入不需要,因为在插入时如果不赋值自然会为空

  5:任意条件更新(     注意set不要给id赋值,如果传对象就把id赋值为空就行了  )

      


      这种方式需要批量更新就使用事物

       


三:删除

   1:删除一条

 DataBase.IDB.Delete(new notice() { id = 1});
   2:更具任意条数删除

    

   3:关联删除配置外键

    



0 0