千家信息网

LinQ to SQL增删改查的示例分析

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下LinQ to SQL增删改查的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!我们来看看LinQ to SQL,就是对数据库的查询,以前叫做DLinQ。经常
千家信息网最后更新 2026年11月03日LinQ to SQL增删改查的示例分析

小编给大家分享一下LinQ to SQL增删改查的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

我们来看看LinQ to SQL,就是对数据库的查询,以前叫做DLinQ。经常看到LinQ那到底是什么呢?他是Language Integrated Query的缩写,以一种类似SQL语句的形式来对对象进行操作的编程方法。

在使用到LinQ时也会用到以前提到过的一些特性,如:匿名类型,自动化属性等等。

LinQ to SQL是一种ORM,它允许你通过编写.NET程序来控制或操作关系型数据库以达到查询的效果。你可以使用LinQ来检索数据库中的数据,也可以通过其进行数据的更新和添加。同时LinQ to SQL也支持事务,试图以及存储过程等等,通过VS2008(现在使用的是beta版本,下同)的LinQ to SQL设计器我们可以很容易定义一些实体类,我们可以通过添加一个新项来加入.dbml文件,并从数据库服务器窗口拖出数据表。

我们定义两个实体类,Artile和Category,我们也可以把存储过程拖到方法的窗口中,由于我们的存储过程和数据表的命名可能带有前缀或其他标识,我们可以查看属性窗口将他们的name属性改掉我们容易识别的名称。我们打开Designer.cs那个文件看一下,是不是生成了几个类,其中一个最重要的是以DataContext为后缀那个类(他以当前dbml文件名加DataContext为名称的类),他是这个LinQ的上下文,我们可以通过他来执行我们的操作。而上面两个是外键关系,他还生成了一个关系类,而且在Category类中好有一个Article的集合,在Article中也有一个关联属性,在赋值时还会对键值类型进行判断。

下面我们来看看实际应用的一些例子(LinQ to SQL四大护法<SELECT/INSERT/UPDATE/DELETE>):

1.从数据库中检索数据<SELECT>

  1. //三个重载(),(string connectionString),(IDbConnection connection)

  2. ItLivesNetDataContext cntx = new ItLivesNetDataContext();

  3. //这个也可以在初始化ItLivesNetDataContext实例时直接进行初始化。

  4. cntx.Connection = new SqlConnection
    (ConfigurationManager.ConnectionStrings[0].ConnectionString);

  5. var articles = from a in cntx.Articles

  6. where a.CategoryID == 1

  7. orderby a.PostDate descending

  8. select a;

上面的代码将返回数据库Articles表中类型ID为1的所有数据,并将其按发布时间进行降序排列。其中articles其实是IEnumerable<T>的实例,这个例子的T就是Article实体类。

2.将新数据插入到数据库中<INSERT>

//插入新类型C++  Category category = new Category   { CategoryName="CPLUSPLUS",IsActived=true, ParentID = 1 };  //插入新文章,类型为C++  var article = new Article { Subject = "C++入门", Author="网魂小兵" };   category.Articles.Add(article);  cntx.Categories.Add(category);  cntx.SubmitChanges();

3.更新新数据<UPDATE>

  1. Category category = cntx.Categories.Single(p =>
    p.CategoryName.ToUpper() == "CSHARP");

  2. category.IsActived = true;

  3. category.Description = "UPDATE CSHARP!";

  4. cntx.SubmitChanges();

4.删除数据库中的数据<DELETE>

var delArtiles = from s in cntx.Articles  where s.CategoryName == "CPLUSPLUS"  select s;  cntx.Articles.RemoveAll(delArtiles);  cntx.SubmitChanges();

看完了这篇文章,相信你对"LinQ to SQL增删改查的示例分析"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

数据 数据库 类型 属性 可以通过 实体 文件 过程 C++ 存储 示例 分析 两个 例子 名称 实例 就是 数据表 方法 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技园 上海卓越科技互联网 疫情对互联网科技公司影响 上海互联网科技有限公司 互联网科技公司做什么 互联网对科技的发展 互联网为啥属于高科技 移动互联网年度科技创新 消费医药和互联网科技 华夏恒生互联网科技013171 佛山市翊博互联网络科技有限公司 阿里互联网科技企业 烟台灵鸽互联网科技有限公司 上海京穆互联网科技有限公司 云南省自由互联网科技有限公司 广州百诚互联网科技有限公司官网 领航科技大厦互联网公司 西安有哪些互联网高科技企业 米泉互联网科技专业怎么样 安徽零酒互联网科技有限公司 科技与互联网 互联网科技战争 奇酷互联网络科技 互联网科技股为什么大涨 上海互联网科技公司ppt 互联网科技手抄报图片 互联网科技品牌 互联网科技大会大佬 平安好医生打造互联网科技医疗 科技美学互联网 艺术
0