using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
//
using System.Data;
using System.Data.SqlClient;
using System.Data.OracleClient;
using Mvc01.Models;

namespace Mvc01.Common
{
    public class PubMethod
    {
        public void AddTest()
        {
            //0.设置Model1.edms视图中,主键ID为 Identity (同一时刻加入)
            //Entities5 db = new Entities5();

//一、单表
            //1.添加
            //USER1 u1 = new USER1();
            //u1.UNAME1 = "12345";
            //db.USER1.Add(u1);

//2修改 (需要指定主键)

//2.1先查询再更新
            //USER1 u1 = db.USER1.Where(p => p.UID1 == 90).FirstOrDefault();
            //if (u1 != null)
            //{
            //    u1.UNAME1 = "User0000";
            //}

//2.2不用查询 直接更新

////3.删除
            //USER1 u1 = new USER1();
            //u1.UID1 = 90;
            //db.Entry(u1).State = EntityState.Deleted;

//4.查询
            //IQueryable<USER1> uAll = db.USER1.Select(p => p);
            //USER1 u2= db.USER1.Where(p => p.UID1 == 90).FirstOrDefault();
            ////贪婪加载
            //STUDENT stu2 = db.STUDENT.Where(p => p.STUID == 42&&p.NUM>5&&p.USER1.Any(b =>b.UDATE>new DateTime(2014,03,01))).FirstOrDefault();
            ////遍历
            //List<STUDENT> stuList = db.STUDENT.Include("STUDENT").ToList();
            //foreach (var item in stuList)
            //{
            //}

//二、多表
            //1.增
            ////1.1多级添加
            //TEACHER te = new TEACHER();
            //te.TNAME = "teacher11";
            //STUDENT stu = new STUDENT();
            //stu.STUNAME = "stu11";
            //USER1 user = new USER1();
            //user.UNAME1 = "user011";

////父子关系
            //te.STUDENT.Add(stu);
            ////子孙关系
            //stu.USER1.Add(user);

////添加操作
            //db.TEACHER.Add(te);

////1.2查找后 增 删 改
            //1.2.1更新子表
            //STUDENT stu = db.STUDENT.Where(p => p.STUID == 42).FirstOrDefault();
            //stu.SNAME2 = "aa";
            //USER1 u1= stu.USER1.Where(p => p.UID1 == 85).FirstOrDefault();
            //if (u1 != null)
            //{
            //    //u1.UNAME1 = "我们1";
            //}

//1.2.2添加子表
            //STUDENT stu = db.STUDENT.Where(p => p.STUID == 42).FirstOrDefault();
            //stu.SNAME2 = "aa";
            //USER1 u2 = new USER1();
            //u2.UNAME1 = "Add01";
            //stu.USER1.Add(u2);

////1.2.3删除子表
            //STUDENT stu = db.STUDENT.Where(p => p.STUID == 42).FirstOrDefault();
            ////遍历主表中的子表,符合条件的子表删除
            //USER1 u1 = new USER1();
            //u1.UID1 = 91;
            //db.Entry(u1).State = EntityState.Deleted;

//级联删除
            //1.设置数据库中Cascade:级联删除
            //STUDENT stu1 = new STUDENT();
            //stu1.STUID = 42;
            //db.Entry(stu1).State = EntityState.Deleted;

//批量添加
            //批量修改
            //批量删除===
            //List<USER1> userList = db.USER1.Where(p => p.SID == 52).ToList();
            //foreach (USER1 item in userList)
            //{
            //    db.Entry(item).State = EntityState.Deleted;
            //}

//子表多对象的操作
            //STUDENT stu = db.STUDENT.Where(p => p.STUID == 43).FirstOrDefault();
            //foreach (var user in stu.USER1)
            //{
            //    if(user.UID1==40)
            //    {
            //        db.Entry(user).State = EntityState.Deleted;
            //    }
            //    if(user.UID1==41)
            //    {
            //        user.UNAME1 = "dddd";
            //    }
            //}
            //USER1 us1 = new USER1();
            //us1.UNAME1 = "eee";
            //stu.USER1.Add(us1);

Entities5 db = new Entities5();

USER1 u1 = new USER1();
            u1.UID1 = 90;  //指定主键
            u1.UNAME1 = "aaaa";
            //设置都不更新
            db.Entry(u1).State = EntityState.Unchanged;
            //单独设置属性
            db.Entry(u1).Property("UNAME1").IsModified = true;

db.SaveChanges();

}

}
}

MVC EF 增 删 改 查的更多相关文章

  1. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  2. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  3. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  4. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  5. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  6. python基础中的四大天王-增-删-改-查

    列表-list-[] 输入内存储存容器 发生改变通常直接变化,让我们看看下面列子 增---默认在最后添加 #append()--括号中可以是数字,可以是字符串,可以是元祖,可以是集合,可以是字典 #l ...

  7. 简单的php数据库操作类代码(增,删,改,查)

    这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...

  8. MongoDB增 删 改 查

    增 增加单篇文档 > db.stu.insert({sn:'001', name:'lisi'}) WriteResult({ "nInserted" : 1 }) > ...

  9. Go语言之进阶篇mysql增 删 改 查

    一.mysql操作基本语法 1.创建名称nulige的数据库 CREATE DATABASE nulige DEFAULT CHARSET utf8 COLLATE utf8_general_ci; ...

随机推荐

  1. C#反射Assembly 具体说明

    1.对C#反射机制的理解 2.概念理解后,必须找到方法去完毕,给出管理的主要语法 3.终于给出有用的样例,反射出来dll中的方法 反射是一个程序集发现及执行的过程,通过反射能够得到*.exe或*.dl ...

  2. Spring的datasource配置详解

    一句话,Spring对Hibernate的整合,是在applicationContext.xml中配置sessionFactory来实现的,其中sessionFactory中要装配dataSource ...

  3. 数据结构——bitmap

    近期在看<编程珠玑>这本书. 第1章中引入了bitmap(位图)的数据结构. 曾经没有接触过, 抽出时间研究了一下,记录下来. 书中描写叙述的情景: 1. 最多1000万个7位数电话号码( ...

  4. HOG算子

    原地址:http://blog.csdn.net/chlele0105/article/details/11991533 梯度直方图特征(HOG) 是一种对图像局部重叠区域的密集型描述符,它通过计算局 ...

  5. JavaScript 中的事件类型3(读书笔记思维导图)

    Web 浏览器中可能发生的事件有很多类型.如前所述,不同的事件类型具有不同的信息,而“ DOM3级事件”规定了以下几类事件. UI(User Interface,用户界面)事件:当用户与页面上的元素交 ...

  6. Andorid Clip 实现自定义的进度条效果实例

    Android该系统提供了一个水平进度条为我们展现了运行使用进展情况,水平进度条显示用于运行进度Clip Drawable技术 下面我们通过一个具体的例子来说明Clip Drawable使用. 还有我 ...

  7. ADN中国团队參加微软的Kinect全国大赛获得三等奖

    上周末我们团队參加了微软的Kinect全国大赛,我们的Kinect + Navisworks漫游荣膺三等奖   团队经理Joe写了篇详实的总结,我就直接转载了. http://blog.csdn.ne ...

  8. c++一些语法模板

    函数模板特 template <class T> int compare(T v1,T v2) { if(v1<v2) return -1; else if(v1>v2) re ...

  9. POJ 3458 Colour Sequence(简单题)

    [题意简述]:事实上题意我也没有特别看懂.可是依据它少许的题目描写叙述加上给的例子.就大胆的做了例如以下的推測: 就是说,如今给出一串字符s.然后紧接着给出可见的字符串visible还有隐藏的字符串h ...

  10. c#控制台应用程序-“进入指定日期检查出星期几”

    这涉及一个算法: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1) mod 7 在公式中d表示日期中的日数.m表示月份数.y表示年数. 注意:在公式 ...