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. 编绎OpenJDK

    因为对于Java里的vtable,itable,有个地方还没搞明白,不得已去下个OpenJDK来研究下. 本来很不愿意去编绎OpenJDK,因为很有可能做的只是无用功,还有可能要去解决各种找不到链接库 ...

  2. CentOS6.5 服务器+apache5.3绑定多个域名+SELinux设置

    下面简单的介绍了如何通过设置Apache的http.conf文件,进行多个域名以及其相关的二级域名的绑定(假设我们要绑定的域名是minidx.com和ntt.cc,二级域名是blog.minidx.c ...

  3. 10-IOSCore - 应用间通信、本地通知

    一.应用间通信 URL 调用系统服务: tel:11111 sms:xxx@163.com http:// URL深入 类型://主机:端口/地址?参数 label框等于文字大小快捷键:command ...

  4. Python与开源GIS:在OGR中使用SQL语句进行查询

    摘要: 属性选择与空间选择都可以看作是OGR内置的选择功能,这两种功能可以解决大部分实际中的问题.但是也有这种时候,就是进行查询时的条件比较复杂.针对这种情况,OGR也提供了更加灵活的解决方案:支持使 ...

  5. java class生成jar包(转)

    进入dos操作符窗口cd进入要打成jar包的class文件所有文件夹目录jar cvf [生成jar的名称.jar] [列出class文件] //若有多个,以空隔隔开 如:一.操作零散的单个或几个cl ...

  6. 基于visual Studio2013解决C语言竞赛题之1050矩阵反斜线求和

       题目 解决代码及点评 /************************************************************************/ /* 50 ...

  7. Embedded Linux Primer----嵌入式Linux基础教程--章节介绍

    章节介绍 第一章,“导引”,简要介绍了Linux被迅速应用在嵌入式环境的驱动因素,介绍了与嵌入式Linux相关的几个重要的标准和组织. 第二章,“第一个嵌入式经历”,介绍了与后几章所构建的嵌入式Lin ...

  8. SQL中on条件与where条件的区别(转载)

    数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户. 在使用left jion时,on和where条件的区别如下: 1. on条件是在生成临时表时使用的条 ...

  9. c++实现atoi()和itoa()函数(字符串和整数转化)

    (0) c++类型所占的字节和表示范围 c 语言里 类型转换那些事儿(补码 反码) 应届生面试准备之道 最值得学习阅读的10个C语言开源项目代码 一:起因 (1)字符串类型转化为整数型(Integer ...

  10. poj1459 Power Network --- 最大流 EK/dinic

    求从电站->调度站->消费者的最大流,给出一些边上的容量.和电站和消费者能够输入和输出的最大量. 加入一个超级源点和汇点,建边跑模板就能够了. 两个模板逗能够. #include < ...