public partial class Form1 : Form
    {
        private MydbInfoDataContext context = new MydbInfoDataContext();
        public Form1()
        {
            InitializeComponent();
        }
        //查询所有
        private void butOK_Click(object sender, EventArgs e)
        {
            // var var = from p in context.Info select p;
            var var = context.Info;
            dataGridView1.DataSource = var;
        }
        //等值查询
        private void butDengzhi_Click(object sender, EventArgs e)
        {
            //var var=from p in context.Info where p.Name=="胡军"select p;
            var var = context.Info.Where(p => p.Name == "胡军");
            dataGridView1.DataSource = var;
        }
        //不等值查询
        private void butBudengzhi_Click(object sender, EventArgs e)
        {
            //var var = from p in context.Info where p.Code != "p001" select p;
            var var = context.Info.Where(p => p.Code != "p002");
            dataGridView1.DataSource = var;
 
        }
        //多条件查询
        private void butDuotiaojian_Click(object sender, EventArgs e)
        {
            //var var = from p in context.Info where p.Sex == true && p.Nation == "n003" select p;
            var var = context.Info.Where(p => p.Sex == true ).Where(p=>p.Nation=="n003");
            dataGridView1.DataSource = var;
        }
        //数据添加
        private void butADD_Click(object sender, EventArgs e)
        {
            Info data = new Info();
            data.Code = txtcode.Text;
            data.Name = txtname.Text;
            data.Sex = Convert.ToBoolean (txtsex.Text);
            data.Nation = txtnation.Text;
            data.Birthday = Convert.ToDateTime(txtbirthday.Text);
 
            context.Info.InsertOnSubmit(data);
 
            context.SubmitChanges();
 
        }
        //数据在界面显示
        private void Form1_Load(object sender, EventArgs e)
        {
            List<Info> list = context.Info.ToList();
            dataGridView1.DataSource = list;
        }
        //删除数据
        private void butdelete_Click(object sender, EventArgs e)
        {
            var var = context.Info.Where(p => p.Code == txtcode.Text);
            
            if(var.Count()>0)
            {
                Info data = var.First();
 
                context.Info.DeleteOnSubmit(data);
 
                context.SubmitChanges();
            }
        }
        //
        private void txtcode_TextChanged(object sender, EventArgs e)
        {
 
        }
        //修改数据
        private void butUpdata_Click(object sender, EventArgs e)
        {
            var var = context.Info.Where (p => p.Code == txtcode.Text);
 
            if(var.Count()>0)
            {
                Info data = var.First();
                data.Code = txtcode.Text;
                data.Name = txtname.Text;
                data.Sex =Convert.ToBoolean( txtsex.Text);
                data.Nation = txtnation.Text;
                data.Birthday =Convert.ToDateTime (txtbirthday.Text);
            }
            context.SubmitChanges();
        }
        //模糊查询
        private void butMohu_Click(object sender, EventArgs e)
        {
            //var var = from p in context.Info where p.Name.Contains("环") select p;
           // var var = context.Info.Where(p => p.Name.StartsWith("环"));
           // var var = context.Info.Where(p => p.Name.EndsWith("妹"));
            var var =context.Info.Where(p=>p.Name.Substring(0,1)=="环");
            dataGridView1.DataSource = var;
        }
        //集合操作 
        private void butJihecaozuo_Click(object sender, EventArgs e)
        {
            var var1 = context.Info.Where(p => p.Sex == true);
            var var2 = context.Info.Where(p => p.Nation == "n003");
 
            //相交部位
            //var var = var1.Intersect(var2);
            //var var = var1.Union(var2);
            var var = var2.Except(var1);
            dataGridView1.DataSource = var;
        }
        //统计函数  个数 总和 平均值 最大 最小
        private void butTongji_Click(object sender, EventArgs e)
        {
            var var = context.Info.Where(p => p.Birthday.Value.Month > 5);
            //显示月份在五月份的有2个
            txtcode.Text = var.Count().ToString();
            //显示当前日期月份减去查询人物生日月份的值
            txtname.Text = var.Sum(p => DateTime.Now.Month - p.Birthday.Value.Month).ToString();
            //当前日期月份减去查询日期月份的平均值
            txtsex.Text = var.Average(p => DateTime.Now.Month - p.Birthday.Value.Month).ToString();
            //当前日期月份减去查询日期月份的最大值
            txtnation.Text = var.Max(p => DateTime.Now.Month - p.Birthday.Value.Month).ToString();
            //当前日期月份减去查询日期月份的最小值
            txtbirthday.Text = var.Min(p => DateTime.Now.Month - p.Birthday.Value.Month).ToString();
 
        }
        //转换操作
        private void butZhuanHuan_Click(object sender, EventArgs e)
        {
            //转换成集合 
            var var = context.Info.Where(p => p.Birthday.Value.Month > 5);
            List<Info> list = var.ToList();
            //转换成数组
            //var var = context.Info.Where(p => p.Birthday.Value.Month > 5);
            //Info[] list = var.ToArray(); 
            //转换成对象
            //var var = context.Info.Where(p => p.Birthday.Value.Month > 5);
            //Info data = var.First();
            dataGridView1.DataSource = var;
           
 
        }
        //分页查询
        private void butFenYe_Click(object sender, EventArgs e)
        {
            //跳过1条分成2页 显示2条
            var var = context.Info.Skip(1 * 1).Take(2);
            dataGridView1.DataSource = var;
        }
 
    }

ORM增删改查询例题的更多相关文章

  1. Django框架(三)-- orm增删改查、Django生命周期

    一.orm介绍 1.什么是orm ORM即Object Relational Mapping,全称对象关系映射. 2.使用orm的优缺点 优点: 不用写SQL语句 开发效率高 缺点: SQL的效率低 ...

  2. Django框架(三)—— orm增删改查、Django生命周期

    目录 orm增删改查.Django生命周期 一.orm介绍 二.orm增删改字段 三.Django生命周期 orm增删改查.Django生命周期 一.orm介绍 1.什么是orm ORM即Object ...

  3. ORM增删改查并发性能测试2

    前言 上一篇<ORM增删改查并发性能测试>出现了点小失误,有的输出SQL日志的代码没有禁用,数据库连接字符串可能有问题.统一环境,统一代码后,重新写一篇. 这次重点是并发性能测试,真不是为 ...

  4. django ORM 增删改查 模糊查询 字段类型 及参数等

    ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...

  5. 饮冰三年-人工智能-Python-24 Django ORM增删改查

    一:首先使用默认的sqlite3创建表 1:现在在models.py中添加表模型 from django.db import models # Create your models here. cla ...

  6. $Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期

    1 orm介绍  ORM是什么   ORM 是 python编程语言后端web框架 Django的核心思想,“Object Relational Mapping”,即对象-关系映射,简称ORM.  一 ...

  7. day054 组件 CBV FBV 装饰器 ORM增删改查

    组件: ​ 把一小段HTML 放在一个HTML中 nav.html ​ 使用: ​ {% include ‘nav.html ’ %} 一. FBV 和CBV 1.FBV(function base ...

  8. ORM增删改查

    目录 orm django 连接mysql顺序 1 settings配置文件中 2 项目文件夹下的init文件中写上下面内容, 补充 3 models文件中创建一个类(类名就是表名) 4.执行数据库同 ...

  9. ORM增删改查并发性能测试

    这两天在对一些ORM进行性能测试(涉及SqlSugar.FreeSql.Fast.Framework.Dapper.LiteSql),测试用的是Winform程序,别人第一眼看到我的程序,说,你这测试 ...

随机推荐

  1. BZOJ 2318: Spoj4060 game with probability Problem( 概率dp )

    概率dp... http://blog.csdn.net/Vmurder/article/details/46467899 ( from : [辗转山河弋流歌 by 空灰冰魂] ) 这个讲得很好 , ...

  2. python-Day3-set 集合-counter计数器-默认字典(defaultdict) -可命名元组(namedtuple)-有序字典(orderedDict)-双向队列(deque)--Queue单项队列--深浅拷贝---函数参数

    上节内容回顾:C语言为什么比起他语言块,因为C 会把代码变异成机器码Pyhton 的 .pyc文件是什么python 把.py文件编译成的.pyc文件是Python的字节码, 字符串本质是 字符数组, ...

  3. Java之从控制台读入数据

    0 引言    从控制台中读取数据是一个比较常用的功能,在 JDK 5.0 以前的版本中的实现是比较复杂的,需要手工处理系统的输入流.有意思的是,从 JDK 5.0 版本开始,能从控制台中输入数据的方 ...

  4. JAVA技术专题综述之线程篇(1)

    本文详细介绍JAVA技术专题综述之线程篇 编写具有多线程能力的程序经常会用到的方法有: run(),start(),wait(),notify(),notifyAll(),sleep(),yield( ...

  5. 【译】在Asp.Net中操作PDF – iTextSharp-列表

    原文 [译]在Asp.Net中操作PDF – iTextSharp-列表 在前文中,我们已经知道了如何利用iTextSharp创建PDF文档,设置字体样式和风格.本文开始讲述iTextSharp中的有 ...

  6. JVM调优总结(二)-一些概念

    Java对象的大小 基本数据的类型的大小是固定的,这里就不多说了.对于非基本类型的Java对象,其大小就值得商榷. 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有 ...

  7. Hadoop 源码分析(二四)FSNamesystem

    以下轮到FSNamesystem 出场了. FSNamesystem.java 一共同拥有4573 行.而整个namenode 文件夹下全部的Java 程序总共也仅仅有16876 行,把FSNames ...

  8. Leetcode 线性表 Swap Nodes in Pairs

    本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie Swap Nodes in Pairs Total Accepted: 12511 Tota ...

  9. C#面向对象1 类 以及 类的继承(new、ovverride)

    类 的典型代码============================== 包括 属性及其判断赋值  方法  构造函数及其重载 )                 {                  ...

  10. OC中多线程的一些概念

    1.进程1.1>进程是指在系统中正在运行的一个应用程序(同时打开QQ和Xcode,系统会分别启动2个进程)1.2>每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存空间内 2.线 ...