• 创建数据对象模型
sqlmetal /code:"C:\MyProjects\VS2008\Data\LinqConsoleApp2\LinqConsoleApp2\northwnd.cs" /language.csharp "C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\northwnd.mdf" /pluralize

创建数据对象

  • 使用数据对象模型(CRUD)
 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;

 namespace LinqConsoleApp2
 {
     class Program
     {
         static void Main(string[] args)
         {
             //指定数据源
             Northwnd db = new Northwnd(@"C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\northwnd.mdf");
             //查询
             IQueryable<Customer> custQuery =
                 from cust in db.Customers
                 where cust.City == "London"
                 select cust;
             Console.WriteLine("查询后的操作结果:");
             foreach (Customer cust in custQuery)
             {
                 Console.WriteLine("\t{0},{1}", cust.CustomerID, cust.CompanyName);
             }
             //插入
             Customer newCust = new Customer();
             newCust.CompanyName = "中国电信";
             newCust.CustomerID = "CTTC";
             db.Customers.InsertOnSubmit(newCust);
             db.SubmitChanges();
             Console.WriteLine("插入后的操作结果:");
             foreach(var c in db.Customers.Where(cust => cust.CustomerID.Contains("TC"))){
                 Console.WriteLine("\t{0},{1}",c.CustomerID,c.CompanyName);
             }
             //更新
             var exitCust = (from c in db.Customers
                             where c.CustomerID == "CTTC"
                             select c).First();
             exitCust.CompanyName = "中国联通";
             db.SubmitChanges();
             Console.WriteLine("更新后的操作结果:");
             foreach (var c in db.Customers.Where(cust => cust.CustomerID.Contains("TC")))
             {
                 Console.WriteLine("\t{0},{1}", c.CustomerID, c.CompanyName);
             }
             //删除
             var exitCust2 = (from c in db.Customers
                              where c.CustomerID == "CTTC"
                              select c).First();
             db.Customers.DeleteOnSubmit(exitCust2);
             db.SubmitChanges();
             Console.WriteLine("删除后的操作结果:");
             foreach (var c in db.Customers.Where(cust => cust.CustomerID.Contains("TC")))
             {
                 Console.WriteLine("\t{0},{1}", c.CustomerID, c.CompanyName);
             }

             Console.ReadLine();
         }//static void Main(string[] args)
     }//class Program
 }

使用数据对象

  • 运行结果展示

  • 备注

需引用System.Data.Linq导入相应的命名空间

LINQ to SQL的CRUD操作的更多相关文章

  1. 【转载】ADO.NET与ORM的比较(3):Linq to SQL实现CRUD

    [转载]ADO.NET与ORM的比较(3):Linq to SQL实现CRUD 说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是Spring+Struts+Hibernate ...

  2. LINQ to SQL更新数据库操作(转载)

    使用LINQ to SQL建模Northwind数据库 在这之前一起学过LINQ to SQL设计器的使用,下面就使用如下的数据模型: 当使用LINQ to SQL设计器设计以上定义的五个类(Prod ...

  3. CQL和SQL的CRUD操作比较

    数据进行CRUD操作时,CQL语句和SQL语句的异同之处. 1.建表 2.CRUD语句比较 3.总结 1.建表 在此之前先分别创建两张表,插入数据,用来测试然后进行比较 在SQL数据库里面创建表 在C ...

  4. MVC linq To SQL更新数据库操作

    首先在视图中提交数据,使用Html.BeginForm() @using(Html.BeginForm()) { @Html.EditorForModel() //编辑模板.控制器中传过来的数据 &l ...

  5. Linq之Linq to Sql

    目录 写在前面 系列文章 Linq to sql 总结 写在前面 上篇文章介绍了linq to xml的相关内容,linq to xml提供一种更便捷的创建xml树,及查询的途径.这篇文章将继续介绍l ...

  6. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  7. 数据库CRUD操作以及MyBatis的配置使用

    • 业务字段设计 • 数据库创建 • CRUD操作 • MyBatis集成 • 注解和XML定义 • ViewObject和DateTool • 首页开发     • 业务字段设计 实体: name: ...

  8. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  9. Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等)

    Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等) 子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 = from c i ...

随机推荐

  1. QF——iOS通知中心(NotificationCener)

    前面我们讲iOS不同界面间传值的时候,说过可以通过通知中心进行传值.那到底什么是通知中心,他是如何实现传值的呢? NSNotificationCenter是单例的,只提供了一个唯一的实例化入口,在整个 ...

  2. Spark 算子

    0.parallelize 1.map 2.mapValues 3.flatMap 4.mapPartitions 5.mapPartitionsWithIndex 6.filter 7.reduce ...

  3. hdu 4512 吉哥系列故事——完美队形I LCIS

    题目链接 给一个数列, 在里面选出一些数组成一个对称的数列, 数的顺序不能打乱. 使得左半边是一个严格递增的数列, 右边递减, 并且a[i] = a[n-i+1]. 就是一个对称的LCIS.. #in ...

  4. 概率法求解三阶幻方[C语言]

    #include <stdio.h> #include <string.h> ]={,,,,,,,,}; ]; ][]; int sum(int su[]) { ; ;su[i ...

  5. java反射机制(笔记)

    java反射机制就是获取出class的相应方法 例如 获取构造函数: 模版: Class test = Class.forName("cn.test.Person");//得到相应 ...

  6. 解决Node.js调用fs.renameSync报错的问题(Error: EXDEV, cross-device link not permitted)

    2014-08-23 今天开始学习Node.js,在写一个文件上传的功能时候,调用fs.renameSync方法错误 出错代码所在如下: function upload(response,reques ...

  7. javascript关键字加亮加连接

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/str ...

  8. 最终有SpringMvc与Struts2的对照啦

    眼下企业中使用SpringMvc的比例已经远远超过Struts2,那么两者究竟有什么差别,是非常多刚開始学习的人比較关注的问题,以下我们就来对SpringMvc和Struts2进行各方面的比較: 1. ...

  9. Objective-C中的@dynamic

    一.@dynamic与@synthesize的区别 @property有两个对应的词,一个是@synthesize,一个是@dynamic.如果@synthesize和@dynamic都没写,那么默认 ...

  10. SQL Convert XML to Table

    将xml nodes 属性中的值 转为table 形式 declare @xml2 xml set @xml2 = '<CMADatas> <CMAData CmaName=&quo ...